FIX: Exception in DrawCli When Displaying Summary InformationLast reviewed: September 19, 1997Article ID: Q153963 |
4.00 4.10 4.20
WINDOWS NT
kbole kbbuglist kbfixlist
The information in this article applies to:
SYMPTOMSWhen displaying the Summary Info for an existing DrawCli file with Summary Info saved, DrawCli may crash with the following error:
Unhandled Exception : Access ViolationDrawCli is an MFC OLE sample that is shipped with Visual C++.
CAUSECSummInfo::ReadFromStorage does not set CSummInfo::m_pSection. This behavior leaves a dangling pointer into memory that has been deleted.
RESOLUTIONModify the ReadFromStorage as follows:
BOOL CSummInfo::ReadFromStorage( LPSTORAGE lpRootStg ) { if (lpRootStg != NULL) { LPSTREAM lpStream = NULL; if (FAILED(lpRootStg->OpenStream( szSummInfo, NULL, STGM_SHARE_EXCLUSIVE|STGM_READ, 0, &lpStream ))) { TRACE(_T("OpenStream failed\n")); return FALSE; } else { if (!m_propSet.ReadFromStream( lpStream )) { TRACE(_T("ReadFromStream failed\n")); return FALSE; } // add the following line m_pSection = m_propSet.GetSection(FMTID_SummaryInformation); lpStream->Release(); return TRUE; } } return FALSE; } STATUSMicrosoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article. This bug was corrected in Visual C++ version 4.2.
|
Additional reference words: 4.00 4.10 4.20 mfcole vcbuglist400 vcfixlist420
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |