Ole-BSTR-Concat broken?

Olaf Schmidt sss at online.de
Sat Jun 24 04:47:51 CDT 2006


Hi *.*,

seems, that the Ole-BSTR-Concat doesn't work anymore:
(Debian Sid, from wine 0.9.12 upwards - wine configured, 
to use the builtin Ole-Stuff)

In VB-Applications (wich are using (wide) Ole-BSTRs under
the hood), I can reduce the problem to the following:

If I define two Strings with the Content:

S1, containing a Zero WChar
(BSTR-LenDescriptor=2, ByteSequence 0 0)

and S2, containing "A|Zero|B"
(BSTR-LenDescriptor=6, ByteSequence 65 0 | 0 0 | 66 0)

and then do the concat:
SResult = S1 + S2

the resulting string contains only an "A" 
(BSTR-LenDescriptor=2, ByteSequence 65 0)

instead of the correct ByteSequence: 0 0 | 65 0 | 0 0 | 66 0

That means, that the current implementation does not use
the BSTR-Len-Descriptor anymore (it has worked in 0.9.10
or 0.9.11 - not very sure, but think it was 0.9.11 in my last tests)
Instead it now behaves like routines, wich have to concat 
Zero-Terminated Strings.

Nothing changed in my wine-configuration - only apt-getted to 
0.9.12 first -> then to the latest 0.9.16 (ubuntu-deb) -> same
problem.

Do you handle the OLE-BSTR-stuff directly in wine, or do you
give that jobs to other Libs in the system (the 0.9.12er winelib-
update has also changed some dependencies (Gtk, libc* and 
others)?

Olaf Schmidt





More information about the wine-devel mailing list