Index: chrome_frame/chrome_frame_activex_base.h |
=================================================================== |
--- chrome_frame/chrome_frame_activex_base.h (revision 67943) |
+++ chrome_frame/chrome_frame_activex_base.h (working copy) |
@@ -24,6 +24,7 @@ |
#include "base/win/scoped_comptr.h" |
#include "base/win/scoped_variant.h" |
#include "grit/chrome_frame_resources.h" |
+#include "ceee/ie/common/ceee_util.h" |
#include "chrome/common/url_constants.h" |
#include "chrome_frame/chrome_frame_plugin.h" |
#include "chrome_frame/com_message_event.h" |
@@ -411,7 +412,12 @@ |
(lstrcmpi(profile_name.c_str(), kRundllProfileName) == 0); |
// Browsers without IDeleteBrowsingHistory in non-priv mode |
// have their profiles moved into "Temporary Internet Files". |
- if (is_IE && GetIEVersion() < IE_8 && !is_privileged_) { |
+ // |
+ // If CEEE is registered, we must have a persistent profile. We |
+ // considered checking if e.g. ceee_ie.dll is loaded in the process |
+ // but this gets into edge cases when the user enables the CEEE add-on |
+ // after CF is first loaded. |
+ if (is_IE && GetIEVersion() < IE_8 && !ceee_util::IsIeCeeeRegistered()) { |
*profile_path = GetIETemporaryFilesFolder(); |
*profile_path = profile_path->Append(L"Google Chrome Frame"); |
} else { |