[#70977] [Ruby trunk - Feature #11473] Immutable String literal in Ruby 3 — arai@...
Issue #11473 has been updated by Shunichi Arai.
3 messages
2015/10/04
[#70982] limiting scope of magic comments like frozen_string_literal — Eric Wong <normalperson@...>
How about being able to limit the scope of magic comments like
4 messages
2015/10/05
[#71062] [Ruby trunk - Bug #10892] Deadlock in autoload — eregontp@...
Issue #10892 has been updated by Benoit Daloze.
4 messages
2015/10/12
[#71090] Re: [Ruby trunk - Bug #10892] Deadlock in autoload
— Eric Wong <normalperson@...>
2015/10/14
eregontp@gmail.com wrote:
[#71127] [Ruby trunk - Feature #11607] [PATCH] fiddle: release GVL for ffi_call — normalperson@...
Issue #11607 has been updated by Eric Wong.
3 messages
2015/10/20
[#71164] [Ruby trunk - Feature #11614] [Open] [RFC] use id_table for constant tables — normalperson@...
Issue #11614 has been reported by Eric Wong.
3 messages
2015/10/22
[#71211] [Ruby trunk - Feature #11607] [PATCH] fiddle: release GVL for ffi_call — naruse@...
Issue #11607 has been updated by Yui NARUSE.
6 messages
2015/10/27
[#71212] Re: [Ruby trunk - Feature #11607] [PATCH] fiddle: release GVL for ffi_call
— Eric Wong <normalperson@...>
2015/10/27
Yes, user must check if the function is MT-safe. Probably fine
[#71246] Re: [Ruby trunk - Feature #11607] [PATCH] fiddle: release GVL for ffi_call
— Aaron Patterson <tenderlove@...>
2015/10/28
On Tue, Oct 27, 2015 at 08:54:07AM +0000, Eric Wong wrote:
[#71254] Re: [Ruby trunk - Feature #11607] [PATCH] fiddle: release GVL for ffi_call
— Eric Wong <normalperson@...>
2015/10/28
Aaron Patterson <tenderlove@ruby-lang.org> wrote:
[#71230] [Ruby trunk - Feature #11625] Unlock GVL for SHA1 calculations — tenderlove@...
Issue #11625 has been updated by Aaron Patterson.
5 messages
2015/10/27
[#71236] Re: [Ruby trunk - Feature #11625] Unlock GVL for SHA1 calculations
— Юрий Соколов <funny.falcon@...>
2015/10/28
What's about other hashsum algos? MD5, SHA2, etc
[#71242] Re: [Ruby trunk - Feature #11625] Unlock GVL for SHA1 calculations
— Eric Wong <normalperson@...>
2015/10/28
Юрий Соколов <funny.falcon@gmail.com> wrote:
[#71239] [Ruby trunk - Bug #11384] multi-threaded autoload sometimes fails — shugo@...
Issue #11384 has been updated by Shugo Maeda.
4 messages
2015/10/28
[ruby-core:70991] [Ruby trunk - Bug #11515] CreateProcessW() can cause "Invalid access to memory location"
From:
docwhat@...
Date:
2015-10-05 13:30:14 UTC
List:
ruby-core #70991
Issue #11515 has been updated by Christian H旦ltje. Nobuyoshi Nakada wrote: > `CreateChild` is never called with a constant `cmd`, as it is build at the runtime. Am I reading the code wrong then? The function declaration says `cmd` is a `const WCHAR *`. ~~~ CreateChild(const WCHAR *cmd, ...) ~~~ As I said, I'm no expert at this. I googled a bunch and I found the MSDN page mentioned above. The *only* place it mentions memory access errors is if you pass `cmd` as a "constant string". I'm unsure if they mean the *pointer* to the string or, the memory the pointer points at, or both. My patch assumes "both" and makes a copy. > How can you reproduce it? Well, that's tricky since the OS decides whether or not to move things around. So there is no way to guarantee reproducing the error. ---------------------------------------- Bug #11515: CreateProcessW() can cause "Invalid access to memory location" https://bugs.ruby-lang.org/issues/11515#change-54366 * Author: Christian H旦ltje * Status: Feedback * Priority: Normal * Assignee: * ruby -v: * Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN, 2.2: UNKNOWN ---------------------------------------- The second argument for `CreateProcessW()` needs to *not* be a constant because it may be modified: From https://msdn.microsoft.com/en-us/library/windows/desktop/ms682425(v=vs.85).aspx : > The Unicode version of this function, CreateProcessW, can modify the contents of this string. Therefore, this parameter cannot be a pointer to read-only memory (such as a const variable or a literal string). If this parameter is a constant string, the function may cause an access violation. This would explain sporadic "Invalid access to memory location" errors people see on Windows. To resolve ths, `cmd` should be copied into a temporary variable before CreateProcessW() is called. I've attached a patch that might work, but I'm not an expert C/Windows programmer. ---Files-------------------------------- ruby-CreateProcessW-memory-error.diff (919 Bytes) -- https://bugs.ruby-lang.org/