forked from chromium/chromium
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fixed a crash with some HP printer drivers (when invoking PTGetPrintC…
…apabilities on them). Detailed story: Calls to XPS APIs typically require the XPS provider to be opened with PTOpenProvider. PTOpenProvider calls CoInitializeEx with COINIT_MULTITHREADED. We have seen certain buggy HP printer driver DLLs that call CoInitializeEx with COINIT_APARTMENTTHREADED in the context of PTGetPrintCapabilities. This call fails but the printer driver calls CoUninitialize anyway. This results in the apartment being torn down too early and the msxml DLL being unloaded which in turn causes code in unidrvui.dll to have a dangling pointer to an XML document which causes a crash. To protect ourselves from such drivers we make sure we always have an extra CoInitialize (calls to CoInitialize/CoUninitialize are refcounted). BUG=None TEST=Test Cloud Print Proxy on Windows with HP Photosmart 7960 series printers. Review URL: http://codereview.chromium.org/6037019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70754 0039d316-1c4b-4281-b951-d872f2087c98
- Loading branch information
sanjeevr@chromium.org
committed
Jan 7, 2011
1 parent
803b99a
commit 39900b4
Showing
4 changed files
with
54 additions
and
6 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters