--- openarena-engine-0.8.1/Makefile.old 2010-03-06 21:51:19.000000000 +0100 +++ openarena-engine-0.8.1/Makefile 2010-03-06 21:58:01.000000000 +0100 @@ -1278,41 +1278,7 @@ $(B)/client/l_script.o \ $(B)/client/l_struct.o \ \ - $(B)/client/jcapimin.o \ - $(B)/client/jcapistd.o \ - $(B)/client/jchuff.o \ - $(B)/client/jcinit.o \ - $(B)/client/jccoefct.o \ - $(B)/client/jccolor.o \ - $(B)/client/jfdctflt.o \ - $(B)/client/jcdctmgr.o \ - $(B)/client/jcphuff.o \ - $(B)/client/jcmainct.o \ - $(B)/client/jcmarker.o \ - $(B)/client/jcmaster.o \ - $(B)/client/jcomapi.o \ - $(B)/client/jcparam.o \ - $(B)/client/jcprepct.o \ - $(B)/client/jcsample.o \ - $(B)/client/jdapimin.o \ - $(B)/client/jdapistd.o \ $(B)/client/jdatasrc.o \ - $(B)/client/jdcoefct.o \ - $(B)/client/jdcolor.o \ - $(B)/client/jddctmgr.o \ - $(B)/client/jdhuff.o \ - $(B)/client/jdinput.o \ - $(B)/client/jdmainct.o \ - $(B)/client/jdmarker.o \ - $(B)/client/jdmaster.o \ - $(B)/client/jdpostct.o \ - $(B)/client/jdsample.o \ - $(B)/client/jdtrans.o \ - $(B)/client/jerror.o \ - $(B)/client/jidctflt.o \ - $(B)/client/jmemmgr.o \ - $(B)/client/jmemnobs.o \ - $(B)/client/jutils.o \ \ $(B)/client/tr_animation.o \ $(B)/client/tr_backend.o \ --- openarena-engine-0.8.1/code/qcommon/unzip.h.old 2010-03-06 21:59:46.000000000 +0100 +++ openarena-engine-0.8.1/code/qcommon/unzip.h 2010-03-06 22:00:58.000000000 +0100 @@ -19,6 +19,8 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA =========================================================================== */ +#include +#include #if defined(STRICTUNZIP) || defined(STRICTZIPUNZIP) /* like the STRICT of WIN32, we define a pointer that cannot be converted @@ -80,6 +82,7 @@ typedef void* (*alloc_func) (void* opaque, unsigned int items, unsigned int size); typedef void (*free_func) (void* opaque, void* address); +#if 0 struct internal_state; typedef struct z_stream_s { @@ -105,6 +108,7 @@ typedef z_stream *z_streamp; +#endif /* file_in_zip_read_info_s contain internal information about a file in zipfile, when reading and decompress it */ --- openarena-engine-0.8.1/code/qcommon/unzip.c.old 2010-03-06 22:01:40.000000000 +0100 +++ openarena-engine-0.8.1/code/qcommon/unzip.c 2010-03-06 22:03:35.000000000 +0100 @@ -49,7 +49,7 @@ ftp://ftp.cdrom.com/pub/infozip/doc/appnote-970311-iz.zip PkWare has also a specification at : ftp://ftp.pkware.com/probdesc.zip */ - +#if 0 /* zlib.h -- interface of the 'zlib' general purpose compression library version 1.1.3, July 9th, 1998 @@ -955,6 +955,7 @@ // static const char * zError OF((int err)); // static int inflateSyncPoint OF((z_streamp z)); // static const uLong * get_crc_table OF((void)); +#endif typedef unsigned char uch; typedef unsigned short ush; @@ -2248,6 +2249,8 @@ return (int)uReadThis; } +#if 0 + /* infblock.h -- header to use infblock.c * Copyright (C) 1995-1998 Mark Adler * For conditions of distribution and use, see copyright notice in zlib.h @@ -4295,3 +4298,4 @@ } +#endif --- openarena-engine-0.8.1/code/jpeg-6/jdatasrc.c.old 2010-03-10 09:13:25.000000000 +0100 +++ openarena-engine-0.8.1/code/jpeg-6/jdatasrc.c 2010-03-10 09:23:39.000000000 +0100 @@ -16,9 +16,15 @@ /* this is not a core library module, so it doesn't define JPEG_INTERNALS */ -#include "jinclude.h" -#include "jpeglib.h" -#include "jerror.h" +#include +#include +#include +#include +#undef METHODDEF +#define METHODDEF static +#undef GLOBAL +#define GLOBAL +#define SIZEOF(object) ((size_t) sizeof(object)) #ifndef MIN #define MIN(a, b) ((a)<(b)?(a):(b)) @@ -189,7 +195,7 @@ */ GLOBAL void -jpeg_mem_src (j_decompress_ptr cinfo, unsigned char *inbuf, size_t size) +jpeg_mem_src (j_decompress_ptr cinfo, unsigned char *inbuf, unsigned long size) { my_src_ptr src; --- openarena-engine-0.8.1/code/renderer/tr_image_jpg.c.old 2010-03-10 09:30:30.000000000 +0100 +++ openarena-engine-0.8.1/code/renderer/tr_image_jpg.c 2010-03-10 10:17:42.000000000 +0100 @@ -31,7 +31,7 @@ */ #define JPEG_INTERNALS -#include "../jpeg-6/jpeglib.h" +#include void R_LoadJPG( const char *filename, unsigned char **pic, int *width, int *height ) { /* This struct contains the JPEG decompression parameters and pointers to @@ -128,7 +128,10 @@ } memcount = pixelcount * 4; - row_stride = cinfo.output_width * cinfo.output_components; + if (3 == cinfo.output_components) + row_stride = cinfo.output_width * 4; + else + row_stride = cinfo.output_width * cinfo.output_components; out = ri.Malloc(memcount); @@ -141,14 +144,26 @@ /* Here we use the library's state variable cinfo.output_scanline as the * loop counter, so that we don't have to keep track ourselves. */ + buf = out; while (cinfo.output_scanline < cinfo.output_height) { /* jpeg_read_scanlines expects an array of pointers to scanlines. * Here the array is only one element long, but you could ask for * more than one scanline at a time if that's more convenient. */ - buf = ((out+(row_stride*cinfo.output_scanline))); buffer = &buf; (void) jpeg_read_scanlines(&cinfo, buffer, 1); + if (3 == cinfo.output_components) { + /* turn RGB into RGBA */ + int ioffset = cinfo.output_width * 3 - 1; + int ooffset = cinfo.output_width * 4 - 1; + do { + buf[ooffset--] = 255; + buf[ooffset--] = buf[ioffset--]; + buf[ooffset--] = buf[ioffset--]; + buf[ooffset--] = buf[ioffset--]; + } while (ioffset > 0); + } + buf += row_stride; } buf = out; @@ -173,7 +188,7 @@ buf[--dindex] = greyshade; } while(sindex); } - else + else if (4 == cinfo.output_components) { // clear all the alphas to 255 int i;