From c5196e249e5b5bb06a4f0b71a05bc1dd10b12342 Mon Sep 17 00:00:00 2001 From: nobu Date: Sat, 15 Aug 2015 01:51:10 +0000 Subject: win32/registry.rb: size in bytes * ext/win32/lib/win32/registry.rb (API#SetValue): data size should be in bytes, not in chars. [ruby-core:70365] [Bug #11439] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51584 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ ext/win32/lib/win32/registry.rb | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index cd7a16509f..f40136de1f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Sat Aug 15 10:51:08 2015 Nobuyoshi Nakada + + * ext/win32/lib/win32/registry.rb (API#SetValue): data size should + be in bytes, not in chars. [ruby-core:70365] [Bug #11439] + Sat Aug 15 10:15:20 2015 Nobuyoshi Nakada * io.c (rb_io_each_codepoint): read more data when read partially. diff --git a/ext/win32/lib/win32/registry.rb b/ext/win32/lib/win32/registry.rb index 3830a5a3ee..aa2d9fc0ce 100644 --- a/ext/win32/lib/win32/registry.rb +++ b/ext/win32/lib/win32/registry.rb @@ -326,7 +326,7 @@ For detail, see the MSDN[http://msdn.microsoft.com/library/en-us/sysinfo/base/pr case type when REG_SZ, REG_EXPAND_SZ, REG_MULTI_SZ data = data.encode(WCHAR) - size ||= data.size + WCHAR_SIZE + size ||= data.bytesize + WCHAR_SIZE end check RegSetValueExW.call(hkey, make_wstr(name), 0, type, data, size) end -- cgit v1.2.3