PKGBUILDs/extra/hpoj/hpoj-pack.patch
2009-10-09 21:23:22 -05:00

59 lines
1.9 KiB
Diff

There is a rather scary and longstanding GCC bug [1] which causes
instant crashes if a program defines a struct with function-pointers
and that structure happens to be "packed". Why anybody would want to
do such a thing is beyond me, but suffice it to say that hpoj v0.91 is
doing precisely that. The current Debian/sarge package for hpoj is
definitely affected (any attempt to scan an image results in an
instant crash).
A patch to work around the problem is attached.
Perhaps the hpoj developers can tell us whether it was really
intentional to have the #pragma pack(1) span all of <stdlib.h> and
<xform.h>?
Thanks,
--david
[1] http://gcc.gnu.org/bugzilla/show_bug.cgi?id=1844
--- hpoj-0.91/include/hpojip.h 2002-07-25 02:01:24.000000000 -0700
+++ hpoj-0.91-davidm/include/hpojip.h 2004-11-11 21:19:58.775236374 -0800
@@ -131,12 +132,15 @@
float fl;
} DWORD_OR_PVOID;
+#pragma pack ()
+
#ifdef HPOJIP_INTERNAL
#include "../lib/hpojip/xform.h" // this file uses the above definitions
#else
typedef struct IP_XFORM_TBL_s FAR *LPIP_XFORM_TBL;
#endif
+#pragma pack (1)
/****************************************************************************\
****************************************************************************
@@ -587,8 +591,6 @@
EXPORT(WORD) ipGetFuncPtrs (LPIP_JUMP_TBL lpJumpTbl);
-#pragma pack ()
-
/****************************************************************************\
****************************************************************************
*
-------------------------------------------------------
This SF.Net email is sponsored by:
Sybase ASE Linux Express Edition - download now for FREE
LinuxWorld Reader's Choice Award Winner for best database on Linux.
http://ads.osdn.com/?ad_id=5588&alloc_id=12065&op=click
_______________________________________________
hpoj-devel mailing list
hpoj-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/hpoj-devel