Skip to content

Commit

Permalink
Merge pull request adobe#673 from jha-g/jha-g/moving-commandline-erro…
Browse files Browse the repository at this point in the history
…r-to-infobar2

moving command line error to infobar and fixing windows port range issues
  • Loading branch information
narayani28 authored and g-217 committed Nov 21, 2019
1 parent 340be0e commit c662e97
Show file tree
Hide file tree
Showing 2 changed files with 31 additions and 19 deletions.
19 changes: 16 additions & 3 deletions appshell/appshell_extensions.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@

extern std::vector<CefString> gDroppedFiles;
extern int g_remote_debugging_port;
extern std::string g_get_remote_debugging_port_error;

namespace appshell_extensions {

Expand All @@ -57,6 +58,7 @@ class ProcessMessageDelegate : public ClientHandler::ProcessMessageDelegate {
CefRefPtr<CefListValue> argList = message->GetArgumentList();
int32 callbackId = -1;
int32 error = NO_ERROR;
std::string errInfo;
CefRefPtr<CefProcessMessage> response =
CefProcessMessage::Create("invokeCallback");
CefRefPtr<CefListValue> responseArgs = response->GetArgumentList();
Expand Down Expand Up @@ -844,7 +846,13 @@ class ProcessMessageDelegate : public ClientHandler::ProcessMessageDelegate {
uberDict->SetList(1, allStats);
responseArgs->SetList(2, uberDict);
} else if (message_name == "GetRemoteDebuggingPort") {
responseArgs->SetInt(2, g_remote_debugging_port);
if (g_get_remote_debugging_port_error.empty() && g_remote_debugging_port > 0) {
responseArgs->SetInt(2, g_remote_debugging_port);
}
else {
responseArgs->SetNull(2);
errInfo = g_get_remote_debugging_port_error;
}
}

else {
Expand All @@ -853,8 +861,13 @@ class ProcessMessageDelegate : public ClientHandler::ProcessMessageDelegate {
}

if (callbackId != -1) {
responseArgs->SetInt(1, error);

if (errInfo.empty()) {
responseArgs->SetInt(1, error);
}
else {
responseArgs->SetString(1, errInfo);
}

// Send response
browser->SendProcessMessage(PID_RENDERER, response);
}
Expand Down
31 changes: 15 additions & 16 deletions appshell/cefclient.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@

CefRefPtr<ClientHandler> g_handler;
int g_remote_debugging_port = 0;
std::string g_get_remote_debugging_port_error;

#ifdef OS_WIN
bool g_force_enable_acc = false;
Expand Down Expand Up @@ -99,24 +100,22 @@ void AppGetSettings(CefSettings& settings, CefRefPtr<CefCommandLine> command_lin
// Enable dev tools
CefString debugger_port = command_line->GetSwitchValue("remote-debugging-port");
if (!debugger_port.empty()) {
const long port = strtol(debugger_port.ToString().c_str(), NULL, 10);
if (errno == ERANGE || port == 0) {
LOG(ERROR) << "Could not enable remote debugging."
<< " Error while parsing remote-debugging-port arg: "<< debugger_port.ToString();
errno = 0;
g_get_remote_debugging_port_error = debugger_port.ToString();
long port = strtol(g_get_remote_debugging_port_error.c_str(), NULL, 10);
if (errno == ERANGE) {
errno = port = 0;
}
static const long max_port_num = 65535;
static const long max_reserved_port_num = 1023;
if (port > max_reserved_port_num && port < max_port_num) {
g_remote_debugging_port = static_cast<int>(port);
settings.remote_debugging_port = g_remote_debugging_port;
g_get_remote_debugging_port_error.clear();
}
else {
static const long max_port_num = 65534;
static const long max_reserved_port_num = 1025;
if (port >= max_reserved_port_num && port <= max_port_num) {
g_remote_debugging_port = static_cast<int>(port);
settings.remote_debugging_port = g_remote_debugging_port;
}
else {
LOG(ERROR) << "Cannot enable remote debugging on port "<< port
<< ". Port numbers should be between "<< max_reserved_port_num
<< " and " << max_port_num << ".";
}
// Setting debugging port to highest number will disable remote debugging
// As setting.remote_debugging_port has higher priority compared to command line option
settings.remote_debugging_port = max_port_num;
}
}

Expand Down

0 comments on commit c662e97

Please sign in to comment.