Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Unified Diff: src/plugin/AdblockPlusClient.cpp

Issue 10897028: Create a shared dictionary class for plugin and engine (Closed)
Patch Set: Created June 7, 2013, 12:42 p.m.
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: src/plugin/AdblockPlusClient.cpp
===================================================================
--- a/src/plugin/AdblockPlusClient.cpp
+++ b/src/plugin/AdblockPlusClient.cpp
@@ -1,40 +1,40 @@
#include "PluginStdAfx.h"
#include "PluginSettings.h"
#include "PluginSystem.h"
#include "PluginFilter.h"
#include "PluginClientFactory.h"
-#include "PluginDictionary.h"
#include "PluginHttpRequest.h"
#include "PluginMutex.h"
#include "PluginClass.h"
-#include "PluginUtil.h"
#include "AdblockPlusClient.h"
#include "../shared/Communication.h"
+#include "../shared/Utils.h"
namespace
{
void SpawnAdblockPlusEngine()
{
- std::wstring engineExecutablePath = DllDir() + L"AdblockPlusEngine.exe";
- CString browserLanguage = CPluginSystem::GetInstance()->GetBrowserLanguage();
+ std::wstring engineExecutablePath = GetDllDir() + L"AdblockPlusEngine.exe";
+ CString params = L"AdblockPlusEngine.exe " + CPluginSystem::GetInstance()->GetBrowserLanguage();
Felix Dahlke 2013/06/11 12:31:14 From the documentation (http://msdn.microsoft.com/
Wladimir Palant 2013/06/12 13:46:07 I would be opposed to that idea given that engineE
Felix Dahlke 2013/06/13 18:07:37 Fair enough.
+
STARTUPINFO startupInfo = {};
PROCESS_INFORMATION processInformation = {};
HANDLE token;
OpenProcessToken(GetCurrentProcess(), TOKEN_DUPLICATE | TOKEN_ADJUST_DEFAULT | TOKEN_QUERY | TOKEN_ASSIGN_PRIMARY, &token);
HANDLE newToken;
DuplicateTokenEx(token, 0, 0, SecurityImpersonation, TokenPrimary, &newToken);
if (!CreateProcessAsUserW(newToken, engineExecutablePath.c_str(),
- browserLanguage.GetBuffer(browserLanguage.GetLength() + 1),
+ params.GetBuffer(params.GetLength() + 1),
0, 0, 0, 0, 0, 0, &startupInfo, &processInformation))
{
DWORD error = GetLastError();
throw std::runtime_error("Failed to start Adblock Plus Engine");
}
CloseHandle(processInformation.hProcess);
CloseHandle(processInformation.hThread);

Powered by Google App Engine
This is Rietveld