Afte debugging around a bit I found the following in the .diff.gz
causing this (in h/object.c):

@@ -514,9 +514,7 @@
 };
 /* flags */
 #define GET_STREAM_FLAG(strm,name) ((strm)->sm.sm_flags & (1<<(name)))
-#define SET_STREAM_FLAG(strm,name,val) (val ? \
-                       ((strm)->sm.sm_flags |= (1<<(name))) : \
-                       ((strm)->sm.sm_flags &= ~(1<<(name)))) 
+#define SET_STREAM_FLAG(strm,name,val) {if (val) (strm)->sm.sm_flags |= (1<<(na
me)); (strm)->sm.sm_flags &= ~(1<<(name));} 
 
 #define GCL_MODE_BLOCKING 1
 #define GCL_MODE_NON_BLOCKING 0

There is obviously a else gone missing. The attached patch (against -19,
as packages.d.o still links to that) solved the problem.

Hochachtungsvoll,
        Bernhard R. Link
--- gcl-2.6.7.old/h/object.h    2006-09-02 21:57:41.000000000 +0000
+++ gcl-2.6.7/h/object.h        2006-09-02 15:15:20.000000000 +0000
@@ -514,7 +514,7 @@
 };
 /* flags */
 #define GET_STREAM_FLAG(strm,name) ((strm)->sm.sm_flags & (1<<(name)))
-#define SET_STREAM_FLAG(strm,name,val) {if (val) (strm)->sm.sm_flags |= 
(1<<(name)); (strm)->sm.sm_flags &= ~(1<<(name));} 
+#define SET_STREAM_FLAG(strm,name,val) {if (val) (strm)->sm.sm_flags |= 
(1<<(name)); else (strm)->sm.sm_flags &= ~(1<<(name));} 
 
 #define GCL_MODE_BLOCKING 1
 #define GCL_MODE_NON_BLOCKING 0

Reply via email to