#include "support/lassert.h"
#include "support/lstrings.h"
#include "support/os.h"
+#include "support/signals.h"
-#include "support/bind.h"
+#include <iostream>
#ifdef _WIN32
#include <io.h>
}
if (!write) {
- theApp()->registerSocketCallback(fd,
- bind(&LyXComm::read_ready, this));
+ // Make sure not to call read_ready after destruction.
+ weak_ptr<void> tracker = tracker_.p();
+ theApp()->registerSocketCallback(fd, [=](){
+ if (!tracker.expired())
+ read_ready();
+ });
}
return fd;
// connect to the lyxfunc in the single GuiView we
// support currently. (Lgb)
- FuncRequest fr(lyxaction.lookupFunc(cmd), arg);
+ FuncRequest fr(lyxaction.lookupFunc(cmd), from_ascii(arg));
fr.setOrigin(FuncRequest::LYXSERVER);
DispatchResult dr;
theApp()->dispatch(fr, dr);