[
https://issues.apache.org/jira/browse/XERCESC-2179?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16964120#comment-16964120
]
martin goodall commented on XERCESC-2179:
-----------------------------------------
see attached suggested fix (find mrg). Also note, the lengths passed into some
functions need to include the 1 byte null terminator, according to MS
documentation. Not knowing the MS internals, if the MS library was to copy the
memory to another structure, based on the length, it would not copy the NULL
terminator if it was not included in the length. This could cause subsequent
issues if the MS library then performed string operations on the new
buffer....basically, best to follow how the documentation says to call the
functions.
The symptoms of this bug is very random segs, because the memory that got
overwritten was occasionally the base pointer for the hashed memory operations.
> access violation in win32transservice.cpp with 64 bit compile
> -------------------------------------------------------------
>
> Key: XERCESC-2179
> URL: https://issues.apache.org/jira/browse/XERCESC-2179
> Project: Xerces-C++
> Issue Type: Bug
> Components: DOM
> Affects Versions: 3.2.2
> Reporter: martin goodall
> Priority: Blocker
> Attachments: Win32TransService.cpp
>
>
> calls to ::Reg... to get registry info are passing in stack variables that
> are 8 bytes long into functions that overwrite 16 bytes, causing memory
> overwrite and very random segs.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]