From 5bfae846bfe248dd88b7213014716276f1c48c1f Mon Sep 17 00:00:00 2001
From: "Mirar (Pontus Hagland)" <pike@sort.mirar.org>
Date: Sat, 28 Feb 1998 00:44:04 +0100
Subject: [PATCH] pnm support initiated

Rev: src/modules/Image/image.c:1.86
---
 src/modules/Image/image.c | 25 +++++++++++++++++--------
 1 file changed, 17 insertions(+), 8 deletions(-)

diff --git a/src/modules/Image/image.c b/src/modules/Image/image.c
index ebab8fe0bd..7cba8057c9 100644
--- a/src/modules/Image/image.c
+++ b/src/modules/Image/image.c
@@ -1,9 +1,9 @@
-/* $Id: image.c,v 1.85 1998/02/18 18:39:37 mirar Exp $ */
+/* $Id: image.c,v 1.86 1998/02/27 23:44:04 mirar Exp $ */
 
 /*
 **! module Image
 **! note
-**!	$Id: image.c,v 1.85 1998/02/18 18:39:37 mirar Exp $
+**!	$Id: image.c,v 1.86 1998/02/27 23:44:04 mirar Exp $
 **! class image
 **!
 **!	The main object of the <ref>Image</ref> module, this object
@@ -82,7 +82,7 @@
 
 #include "stralloc.h"
 #include "global.h"
-RCSID("$Id: image.c,v 1.85 1998/02/18 18:39:37 mirar Exp $");
+RCSID("$Id: image.c,v 1.86 1998/02/27 23:44:04 mirar Exp $");
 #include "pike_macros.h"
 #include "object.h"
 #include "constants.h"
@@ -2995,10 +2995,11 @@ extern void init_image_pnm(void);
 extern void exit_image_pnm(void);
 extern void init_image_x(void);
 extern void exit_image_x(void);
-extern void init_image_png(void);
-extern void exit_image_png(void);
 
-static struct pike_string *magic_JPEG, *magic_XFace;
+static struct pike_string 
+   *magic_JPEG, 
+   *magic_XFace, 
+   *magic_PNG;
 
 static void image_index_magic(INT32 args)
 {
@@ -3023,6 +3024,14 @@ static void image_index_magic(INT32 args)
       SAFE_APPLY_MASTER("resolv",2);
       return;
    }
+   else if (sp[-1].u.string==magic_PNG)
+   {
+      pop_stack();
+      push_string(make_shared_string("_Image_PNG"));
+      push_int(0);
+      SAFE_APPLY_MASTER("resolv",2);
+      return;
+   }
    push_object(THISOBJ); THISOBJ->refs++;
    tmp=sp[-1], sp[-1]=sp[-2], sp[-2]=tmp;
    f_arrow(2);
@@ -3033,6 +3042,7 @@ void pike_module_init(void)
    int i;
 
    magic_JPEG=make_shared_string("JPEG");
+   magic_PNG=make_shared_string("PNG");
    magic_XFace=make_shared_string("XFace");
 
    image_noise_init();
@@ -3256,7 +3266,6 @@ void pike_module_init(void)
 
    init_image_gif();
    init_image_pnm();
-   init_image_png();
    init_image_x();
 }
 
@@ -3272,9 +3281,9 @@ void pike_module_exit(void)
 
   exit_image_gif();
   exit_image_pnm();
-  exit_image_png();
   exit_image_x();
 
+  free_string(magic_PNG);
   free_string(magic_JPEG);
   free_string(magic_XFace);
 }
-- 
GitLab