www.digitalmars.com         C & C++   DMDScript  

c++.wxwindows - working with jpeg images

reply Dmitry Morozhnikov <dmiceman mail.ru> writes:
If someone have troubles with jpeg images please see this bugreport sended to
wxWindows team today:

In a file src/common/imagjpeg.cpp:36 there is lines to prevent definition of
boolean type in src/jpeg/jmorecfg.h:

#if defined(__WXMSW__) && (defined(__MWERKS__) || defined(__DIGITALMARS__) ||
(defined(__WATCOMC__) && __WATCOMC__ < 1200))
#define HAVE_BOOLEAN
#include <windows.h>
#endif

extern "C"
{
#include "jpeglib.h"
}

But with at least Digital Mars compiler jpeg library itself is build without
inclusion of windows.h and with different size of boolean. Applications like
src/samples/image/ which work with jpeg images just crashes after check at
src/jpeg/jdapimin.c:38 (and probably src/jpeg/jcapimin.c:38).

For some mysterious reason compiler flag -a8 (align structure members to 8 byte
boundary) used in src/makesc.env does not help. (dmc version 8.38).

As a quick workaround, inclusion if windows.h instead of definition of boolean
at src/jpeg/jmorecfg.h:261 work well.
Jan 27 2004
next sibling parent reply Arjan Knepper <arjan ask.me> writes:
This has been reported and solved a long time ago, see:

c++.wxwindows/24

Where did you get the src-tree? From CVS or prepacked zip?

Arjan

Dmitry Morozhnikov wrote:
 If someone have troubles with jpeg images please see this bugreport sended to
 wxWindows team today:
 
 In a file src/common/imagjpeg.cpp:36 there is lines to prevent definition of
 boolean type in src/jpeg/jmorecfg.h:
 
 #if defined(__WXMSW__) && (defined(__MWERKS__) || defined(__DIGITALMARS__) ||
 (defined(__WATCOMC__) && __WATCOMC__ < 1200))
 #define HAVE_BOOLEAN
 #include <windows.h>
 #endif
 
 extern "C"
 {
 #include "jpeglib.h"
 }
 
 But with at least Digital Mars compiler jpeg library itself is build without
 inclusion of windows.h and with different size of boolean. Applications like
 src/samples/image/ which work with jpeg images just crashes after check at
 src/jpeg/jdapimin.c:38 (and probably src/jpeg/jcapimin.c:38).
 
 For some mysterious reason compiler flag -a8 (align structure members to 8 byte
 boundary) used in src/makesc.env does not help. (dmc version 8.38).
 
 As a quick workaround, inclusion if windows.h instead of definition of boolean
 at src/jpeg/jmorecfg.h:261 work well.
 
 
 

Jan 28 2004
parent Dmitry Morozhnikov <dmiceman mail.ru> writes:
In article <bv7vuq$2j2a$1 digitaldaemon.com>, Arjan Knepper says...
This has been reported and solved a long time ago, see:

c++.wxwindows/24

Where did you get the src-tree? From CVS or prepacked zip?

Sorry then :-( I got prepackaged zips and now see it is fixed in cvs.
Jan 28 2004
prev sibling parent chris elliott <biol75 york.ac.uk> writes:
Dmitry Morozhnikov wrote:

 If someone have troubles with jpeg images please see this bugreport sended to
 wxWindows team today:
 

Arjan's perseverance chris
Jan 29 2004