summaryrefslogtreecommitdiff
path: root/plugin
diff options
context:
space:
mode:
authorSamuel Lidén Borell <samuel@slbdata.se>2009-10-07 19:49:58 +0200
committerSamuel Lidén Borell <samuel@slbdata.se>2010-01-02 22:30:12 +0100
commit6b017ea4d39f79fea66eadbb37ec1bac1cfbc34c (patch)
treea40770f4912c1811c75d3edf04396fe3988b2ab4 /plugin
parent205717fab38b52f72f16c7c73ec959e7cd900d62 (diff)
downloadfribid-6b017ea4d39f79fea66eadbb37ec1bac1cfbc34c.tar.gz
fribid-6b017ea4d39f79fea66eadbb37ec1bac1cfbc34c.tar.bz2
fribid-6b017ea4d39f79fea66eadbb37ec1bac1cfbc34c.zip
Let the browser process it's messages while the plugin waits for input
Diffstat (limited to 'plugin')
-rw-r--r--plugin/Makefile6
-rw-r--r--plugin/ipc.c2
2 files changed, 6 insertions, 2 deletions
diff --git a/plugin/Makefile b/plugin/Makefile
index ab6b31b..abad991 100644
--- a/plugin/Makefile
+++ b/plugin/Makefile
@@ -1,6 +1,8 @@
COMMONCFLAGS=-O2 -g -Wall -Wextra -std=c99 -pedantic -Wno-unused-parameter
-CCFLAGS=$(COMMONCFLAGS) -I../npapi -fPIC -fvisibility=hidden
+CCFLAGS=$(COMMONCFLAGS) -I../npapi -fPIC -fvisibility=hidden `pkg-config --cflags glib-2.0` -DG_DISABLE_DEPRECATED=1
+LINKFLAGS=-Wl,-z,defs,-soname,libplugins.so
+LIBS=-lc `pkg-config --libs glib-2.0`
# Files to be installed
LIB_PATH=`../configure --internal--get-define=LIB_PATH`
@@ -21,7 +23,7 @@ plugin.o: plugin.h
$(CC) $(CCFLAGS) -c $< -o $@
libplugins.so: $(OBJECTS)
- $(CC) -shared -Wl,-z,defs,-soname,libplugins.so -o $@ $(OBJECTS) -lc
+ $(CC) -shared $(LINKFLAGS) -o $@ $(OBJECTS) $(LIBS)
.PHONY: all clean install uninstall
clean:
diff --git a/plugin/ipc.c b/plugin/ipc.c
index 3b15616..dde6aa6 100644
--- a/plugin/ipc.c
+++ b/plugin/ipc.c
@@ -147,6 +147,7 @@ int sign_performAction_Authenticate(Plugin *plugin) {
pipe_finishCommand(pipeout);
+ pipe_waitData(pipein);
plugin->lastError = pipe_readInt(pipein);
plugin->info.auth.signature = pipe_readString(pipein);
closePipes();
@@ -163,6 +164,7 @@ int sign_performAction_Sign(Plugin *plugin) {
pipe_finishCommand(pipeout);
+ pipe_waitData(pipein);
plugin->lastError = pipe_readInt(pipein);
plugin->info.auth.signature = pipe_readString(pipein);
closePipes();