changeset 1493:a26f03ea99a8

also try bindir when looking for dpid
author corvid <corvid@lavabit.com>
date Thu, 07 Jan 2010 14:49:43 +0000
parents b9a3ee3fbcb8
children 9225a90ad7dd
files ChangeLog src/IO/Makefile.am src/IO/dpi.c
diffstat 3 files changed, 13 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Tue Jan 05 20:30:07 2010 +0100
+++ b/ChangeLog	Thu Jan 07 14:49:43 2010 +0000
@@ -58,6 +58,8 @@
  - Allow keysyms in keysrc.
  - Improve cookie attribute value parsing (BUG 819)
  - Clean up cookie expiration/replacement
+ - Clean up cookie domain/path.
+ - Explicitly check installation bindir for dpid (BUG 930)
    Patches: corvid
 +- Support for the letter-spacing property.
    Patch: Johannes Hofmann, corvid
--- a/src/IO/Makefile.am	Tue Jan 05 20:30:07 2010 +0100
+++ b/src/IO/Makefile.am	Thu Jan 07 14:49:43 2010 +0000
@@ -1,3 +1,4 @@
+AM_CPPFLAGS=-DDILLO_BINDIR='"$(bindir)/"'
 AM_CFLAGS = @LIBFLTK_CFLAGS@
 AM_CXXFLAGS = @LIBFLTK_CXXFLAGS@
 
--- a/src/IO/dpi.c	Tue Jan 05 20:30:07 2010 +0100
+++ b/src/IO/dpi.c	Thu Jan 07 14:49:43 2010 +0000
@@ -364,13 +364,17 @@
       Dpi_close_fd(st_pipe[0]);
       if (execl(path1, "dpid", (char*)NULL) == -1) {
          dFree(path1);
-         if (execlp("dpid", "dpid", (char*)NULL) == -1) {
-            MSG("Dpi_start_dpid (child): %s\n", dStrerror(errno));
-            if (Dpi_blocking_write(st_pipe[1], "ERROR", 5) == -1) {
-               MSG("Dpi_start_dpid (child): can't write to pipe.\n");
+         path1 = dStrconcat(DILLO_BINDIR, "dpid", NULL);
+         if (execl(path1, "dpid", (char*)NULL) == -1) {
+            dFree(path1);
+            if (execlp("dpid", "dpid", (char*)NULL) == -1) {
+               MSG("Dpi_start_dpid (child): %s\n", dStrerror(errno));
+               if (Dpi_blocking_write(st_pipe[1], "ERROR", 5) == -1) {
+                  MSG("Dpi_start_dpid (child): can't write to pipe.\n");
+               }
+               Dpi_close_fd(st_pipe[1]);
+               _exit (EXIT_FAILURE);
             }
-            Dpi_close_fd(st_pipe[1]);
-            _exit (EXIT_FAILURE);
          }
       }
    } else if (pid < 0) {