Module: PDK::Util::Windows::String
Class Method Summary collapse
Class Method Details
.wide_string(str) ⇒ Object
7 8 9 10 11 12 13 14 15 16 17 18 |
# File 'lib/pdk/util/windows/string.rb', line 7 def wide_string(str) # if given a nil string, assume caller wants to pass a nil pointer to win32 return if str.nil? # ruby (< 2.1) does not respect multibyte terminators, so it is possible # for a string to contain a single trailing null byte, followed by garbage # causing buffer overruns. # # See http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?revision=41920&view=revision newstr = str + "\0".encode(str.encoding) newstr.encode!('UTF-16LE') end |