diff options
author | ananta@chromium.org <ananta@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-02-19 01:57:41 +0000 |
---|---|---|
committer | ananta@chromium.org <ananta@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-02-19 01:57:41 +0000 |
commit | bcfb4a1f10406c9d4b5df0001718aa768cdaa171 (patch) | |
tree | 993e278cfadf99f97c540b662607208af8aa622d /chrome/app/chrome.dll.deps | |
parent | 1e63ef067c3c5053587a8cfe58bb46076ee86c3c (diff) | |
download | chromium_src-bcfb4a1f10406c9d4b5df0001718aa768cdaa171.zip chromium_src-bcfb4a1f10406c9d4b5df0001718aa768cdaa171.tar.gz chromium_src-bcfb4a1f10406c9d4b5df0001718aa768cdaa171.tar.bz2 |
Fix a Chrome crash caused in a ChromeFrame instance while displaying the inspector window. The inspector window uses the browser view
which instantiates the whole view including the ToolBar, which in turn instantiates the Autocomplete edit bar which uses Richedit on Windows.
The auto complete edit bar dynamically loads and unloads the richedit control and it uses ATL to superclass the richedit control. If the
rich edit dll loads at a different base address it causes a crash in Chrome while creating the window as ATL caches the wndproc address for a class.
Fix is to setup an implicit dependency on the riched20.dll and not load and free it all the time. To achieve this we use #pragma comment for the
riched20.lib and a dummy call to the CreateTextServices function exported by the dll to ensure that the linker does not discard the import.
Fixes bug http://code.google.com/p/chromium/issues/detail?id=33308
Bug=33308
Review URL: http://codereview.chromium.org/646043
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39415 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/app/chrome.dll.deps')
-rw-r--r-- | chrome/app/chrome.dll.deps | 77 |
1 files changed, 39 insertions, 38 deletions
diff --git a/chrome/app/chrome.dll.deps b/chrome/app/chrome.dll.deps index 2f4712b..961737f 100644 --- a/chrome/app/chrome.dll.deps +++ b/chrome/app/chrome.dll.deps @@ -1,38 +1,39 @@ -# List of chrome.dll's dependencies. - -dependents = [ - 'KERNEL32.dll', - 'USER32.dll', - 'ADVAPI32.dll', - 'WINMM.dll', - 'COMCTL32.dll', - 'SHLWAPI.dll', - 'GDI32.dll', - 'SHELL32.dll', - 'VERSION.dll', - 'USP10.dll', - 'ole32.dll', - 'OLEAUT32.dll', - 'OLEACC.dll', - 'PSAPI.DLL', - 'secur32.dll', - 't2embed.dll', -] - -delay_loaded = [ - 'CRYPTUI.dll', - 'IMM32.dll', - 'CRYPT32.dll', - 'WINHTTP.dll', - 'WININET.dll', - 'WS2_32.dll', - 'dwmapi.dll', - 'dbghelp.dll', - 'COMDLG32.dll', - 'urlmon.dll', - 'avcodec-52.dll', - 'avformat-52.dll', - 'avutil-50.dll', - 'pthreads.dll', - 'IPHLPAPI.dll', -] +# List of chrome.dll's dependencies.
+
+dependents = [
+ 'KERNEL32.dll',
+ 'USER32.dll',
+ 'ADVAPI32.dll',
+ 'WINMM.dll',
+ 'COMCTL32.dll',
+ 'SHLWAPI.dll',
+ 'GDI32.dll',
+ 'SHELL32.dll',
+ 'VERSION.dll',
+ 'USP10.dll',
+ 'ole32.dll',
+ 'OLEAUT32.dll',
+ 'OLEACC.dll',
+ 'PSAPI.DLL',
+ 'secur32.dll',
+ 't2embed.dll',
+ 'riched20.dll',
+]
+
+delay_loaded = [
+ 'CRYPTUI.dll',
+ 'IMM32.dll',
+ 'CRYPT32.dll',
+ 'WINHTTP.dll',
+ 'WININET.dll',
+ 'WS2_32.dll',
+ 'dwmapi.dll',
+ 'dbghelp.dll',
+ 'COMDLG32.dll',
+ 'urlmon.dll',
+ 'avcodec-52.dll',
+ 'avformat-52.dll',
+ 'avutil-50.dll',
+ 'pthreads.dll',
+ 'IPHLPAPI.dll',
+]
|