Bug 50378 - Enable DEP at runtime to allow for compatibility with older versions of ATL
Summary: Enable DEP at runtime to allow for compatibility with older versions of ATL
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: 528+ (Nightly build)
Hardware: Other OS X 10.5
: P2 Normal
Assignee: Steve Falkenburg
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-12-02 00:58 PST by Steve Falkenburg
Modified: 2010-12-02 09:10 PST (History)
1 user (show)

See Also:


Attachments
Patch (2.43 KB, patch)
2010-12-02 01:04 PST, Steve Falkenburg
aroben: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Steve Falkenburg 2010-12-02 00:58:30 PST
Enable DEP at runtime to allow for compatibility with older versions of ATL
Comment 1 Steve Falkenburg 2010-12-02 01:04:58 PST
Created attachment 75359 [details]
Patch
Comment 2 Adam Roben (:aroben) 2010-12-02 09:07:04 PST
Comment on attachment 75359 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=75359&action=review

> WebKit2/WebProcess/win/WebProcessMainWin.cpp:45
> +    const DWORD disableATLThunkEmulation = 0x00000002;

Maybe we don't need to declare this, since we don't use it?

> WebKit2/WebProcess/win/WebProcessMainWin.cpp:47
> +    HMODULE hMod = GetModuleHandleW(L"Kernel32.dll");

Please add a :: here.

> WebKit2/WebProcess/win/WebProcessMainWin.cpp:53
> +    PSETDEP procSet = reinterpret_cast<PSETDEP>(GetProcAddress(hMod, "SetProcessDEPPolicy"));

And here.

> WebKit2/WebProcess/win/WebProcessMainWin.cpp:83
> +    enableDataExecutionPrevention();

Seems like this should go in WebKitMain instead. We already have similar code there.
Comment 3 Adam Roben (:aroben) 2010-12-02 09:08:29 PST
Comment on attachment 75359 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=75359&action=review

>> WebKit2/WebProcess/win/WebProcessMainWin.cpp:83
>> +    enableDataExecutionPrevention();
> 
> Seems like this should go in WebKitMain instead. We already have similar code there.

By putting it in WebKitMain it will get used by the plugin process, too (once we have one).
Comment 4 Steve Falkenburg 2010-12-02 09:10:58 PST
Committed r73138: <http://trac.webkit.org/changeset/73138>