diff --git a/src/modules/Image/encodings/any.c b/src/modules/Image/encodings/any.c
index 21b8640982b886b962c7d0fe39c62b9bacdb71b2..d5293e563f82329a4e8969dbb04b5d30cedc0715 100644
--- a/src/modules/Image/encodings/any.c
+++ b/src/modules/Image/encodings/any.c
@@ -1,9 +1,9 @@
-/* $Id: any.c,v 1.3 1999/03/04 03:00:40 grubba Exp $ */
+/* $Id: any.c,v 1.4 1999/03/11 08:29:32 mirar Exp $ */
 
 /*
 **! module Image
 **! note
-**!	$Id: any.c,v 1.3 1999/03/04 03:00:40 grubba Exp $
+**!	$Id: any.c,v 1.4 1999/03/11 08:29:32 mirar Exp $
 **! submodule ANY
 **!
 **!	This method calls the other decoding methods
@@ -23,7 +23,7 @@
 #include <ctype.h>
 
 #include "stralloc.h"
-RCSID("$Id: any.c,v 1.3 1999/03/04 03:00:40 grubba Exp $");
+RCSID("$Id: any.c,v 1.4 1999/03/11 08:29:32 mirar Exp $");
 #include "pike_macros.h"
 #include "operators.h"
 #include "builtin_functions.h"
@@ -36,6 +36,10 @@ RCSID("$Id: any.c,v 1.3 1999/03/04 03:00:40 grubba Exp $");
 #include "error.h"
 #include "threads.h"
 
+void image_gif__decode(INT32 args);
+void image_pnm_decode(INT32 args);
+void image_xwd__decode(INT32 args);
+
 void image_any__decode(INT32 args)
 {
    if (args!=1 || sp[-args].type!=T_STRING)
diff --git a/src/modules/Image/encodings/gif.c b/src/modules/Image/encodings/gif.c
index 65a2914bd9e84b7fbd0dc38423f89de64b837cbd..b0841b05a5ed67d2bd3888cf54d9741cb8af6de0 100644
--- a/src/modules/Image/encodings/gif.c
+++ b/src/modules/Image/encodings/gif.c
@@ -1,9 +1,9 @@
-/* $Id: gif.c,v 1.45 1998/05/02 01:24:23 mirar Exp $ */
+/* $Id: gif.c,v 1.46 1999/03/11 08:29:33 mirar Exp $ */
 
 /*
 **! module Image
 **! note
-**!	$Id: gif.c,v 1.45 1998/05/02 01:24:23 mirar Exp $
+**!	$Id: gif.c,v 1.46 1999/03/11 08:29:33 mirar Exp $
 **! submodule GIF
 **!
 **!	This submodule keep the GIF encode/decode capabilities
@@ -31,7 +31,7 @@
 #include <ctype.h>
 
 #include "stralloc.h"
-RCSID("$Id: gif.c,v 1.45 1998/05/02 01:24:23 mirar Exp $");
+RCSID("$Id: gif.c,v 1.46 1999/03/11 08:29:33 mirar Exp $");
 #include "pike_macros.h"
 #include "object.h"
 #include "constants.h"
@@ -144,8 +144,8 @@ void image_gif_header_block(INT32 args)
 {
    int xs,ys,bkgi=0,aspect=0,gif87a=0;
    struct neo_colortable *nct=NULL;
-   int globalpalette;
-   int numcolors;
+   int globalpalette=0;
+   int numcolors=0;
    int bpp=1;
    char buf[20];
    struct pike_string *ps;
@@ -663,15 +663,15 @@ CHRONO("gif _render_block end");
 
 void image_gif_render_block(INT32 args)
 {
-   struct image *img,*alpha=NULL;
-   struct neo_colortable *nct;
+   struct image *img=NULL,*alpha=NULL;
+   struct neo_colortable *nct=NULL;
    int numcolors;
    int localpalette,xpos,ypos;
    int alphaidx=-1;
    rgb_group alphacolor;
    int alphaentry=0;
    int transparency;
-   int n;
+   int n=0;
    int delay=0;
    int user_input=0;
    int disposal=0;
@@ -1777,9 +1777,9 @@ static void gif_deinterlace(rgb_group *s,
    free(tmp);
 }
 	
-static void image_gif__decode(INT32 args)
+void image_gif__decode(INT32 args)
 {
-   struct array *a,*b;
+   struct array *a,*b=NULL;
    int n,i;
    struct object *o,*o2,*cto,*lcto;
    int transparency_index=0,transparency=0,
diff --git a/src/modules/Image/encodings/pnm.c b/src/modules/Image/encodings/pnm.c
index 1ed200541ddfab1a36afef265bc3d4b97824215f..8600fd3008165c875f0ef93b42f76ac5f55fbdef 100644
--- a/src/modules/Image/encodings/pnm.c
+++ b/src/modules/Image/encodings/pnm.c
@@ -1,9 +1,9 @@
-/* $Id: pnm.c,v 1.16 1998/04/20 18:53:36 grubba Exp $ */
+/* $Id: pnm.c,v 1.17 1999/03/11 08:29:37 mirar Exp $ */
 
 /*
 **! module Image
 **! note
-**!	$Id: pnm.c,v 1.16 1998/04/20 18:53:36 grubba Exp $
+**!	$Id: pnm.c,v 1.17 1999/03/11 08:29:37 mirar Exp $
 **! submodule PNM
 **!
 **!	This submodule keeps the PNM encode/decode capabilities
@@ -49,7 +49,7 @@
 #include <ctype.h>
 
 #include "stralloc.h"
-RCSID("$Id: pnm.c,v 1.16 1998/04/20 18:53:36 grubba Exp $");
+RCSID("$Id: pnm.c,v 1.17 1999/03/11 08:29:37 mirar Exp $");
 #include "pike_macros.h"
 #include "object.h"
 #include "constants.h"
@@ -393,7 +393,7 @@ void img_pnm_encode_P4(INT32 args) /* binary PBM */
 {
    char buf[80];
    struct pike_string *a,*b;
-   struct image *img;
+   struct image *img=NULL;
    unsigned char *c;
    int y,x,bit;
    rgb_group *s;
@@ -439,7 +439,7 @@ void img_pnm_encode_P5(INT32 args) /* binary PGM */
 {
    char buf[80];
    struct pike_string *a,*b;
-   struct image *img;
+   struct image *img=NULL;
    unsigned char *c;
    int n;
    rgb_group *s;
@@ -474,7 +474,7 @@ void img_pnm_encode_P6(INT32 args)
 {
    char buf[80];
    struct pike_string *a,*b;
-   struct image *img;
+   struct image *img=NULL;
 
    if (args<1 ||
        sp[-args].type!=T_OBJECT ||
@@ -512,7 +512,7 @@ void img_pnm_encode_P6(INT32 args)
 
 void img_pnm_encode_ascii(INT32 args)
 {
-   struct image *img;
+   struct image *img=NULL;
    rgb_group *s;
    int n;
    void (*func)(INT32);
@@ -546,7 +546,7 @@ void img_pnm_encode_ascii(INT32 args)
 
 void img_pnm_encode_binary(INT32 args)
 {
-   struct image *img;
+   struct image *img=NULL;
    rgb_group *s;
    int n;
    void (*func)(INT32);