]> granicus.if.org Git - graphviz/commitdiff
fix some type casting bugs
authorellson <devnull@localhost>
Sun, 18 Jun 2006 10:53:20 +0000 (10:53 +0000)
committerellson <devnull@localhost>
Sun, 18 Jun 2006 10:53:20 +0000 (10:53 +0000)
graphviz.spec.in
lib/common/mapgen.c
lib/common/psgen.c
lib/common/usershape.h
plugin/core/gvloadimage_core.c
plugin/pango/gvloadimage_pango.c

index 97fa2c81c6feb692602e3376f389a54840966cab..c23c9e4dfedcc18b954add36f140e1022144e81d 100644 (file)
@@ -161,7 +161,7 @@ BuildRequires:      /usr/include/tcl.h /usr/include/tk.h
 %{?fc3:BuildRequires: fontconfig-devel xorg-x11-devel tcl-devel tk-devel} 
 %{?fc4:BuildRequires: fontconfig-devel xorg-x11-devel libtool-ltdl libtool-ltdl-devel tcl-devel tk-devel guile-devel} 
 %{?fc5:BuildRequires: fontconfig-devel libtool-ltdl libtool-ltdl-devel tcl-devel tk-devel libXaw-devel libSM-devel libICE-devel libXpm-devel libXt-devel libXmu-devel libXext-devel libX11-devel guile-devel}
-%{?fc6:BuildRequires: fontconfig-devel libtool-ltdl libtool-ltdl-devel tcl-devel tk-devel libXaw-devel libSM-devel libICE-devel libXpm-devel libXt-devel libXmu-devel libXext-devel libX11-devel guile-devel gmp-devel lua-devel}
+%{?fc6:BuildRequires: fontconfig-devel libtool-ltdl libtool-ltdl-devel tcl-devel tk-devel libXaw-devel libSM-devel libICE-devel libXpm-devel libXt-devel libXmu-devel libXext-devel libX11-devel guile-devel gmp-devel lua-devel pango-devel cairo-devel >= 1.1.10}
 
 %description
 A collection of tools for the manipulation and layout
index 85741256ea7c6db14364ff7ef1da2486dfbf547d..3692b03e0b7eadce01855699e30c1815d8cbcb53 100644 (file)
@@ -661,9 +661,8 @@ void map_begin_node(node_t * n)
        tooltip = ND_label(n)->text;
 
     if (url || m_tooltip) {
-       int sample;
+       int sample = 0;
        char *p = agget(n, "samplepoints");
-       
        if (p)
            sample = atoi(p);
        /* We want at least 4 points. For server-side maps, at most 100
index 646113c9fa1c391f62e1b81a0ab6cba1545f12c3..9a8575a6350b629de4a69fa423f04e5194ff4a1d 100644 (file)
@@ -559,9 +559,9 @@ static void ps_usershape(usershape_t *us, boxf b, point *A, int n, bool filled)
     }
 
     if (us->data) {
-       if ((us->datafree != (void*)ps_freeimage_gd)
-               && (us->datafree != (void*)ps_freeimage_ps))  {
-           us->datafree(us->data);        /* free incompatible cache data */
+       if ((us->datafree != ps_freeimage_gd)
+               && (us->datafree != ps_freeimage_ps))  {
+           us->datafree(us);        /* free incompatible cache data */
            us->data = NULL;
            us->datafree = NULL;
            us->datasize = 0;
@@ -578,13 +578,13 @@ static void ps_usershape(usershape_t *us, boxf b, point *A, int n, bool filled)
 #ifdef HAVE_GD_PNG
             case FT_PNG:
                 us->data = (void*)gdImageCreateFromPng(us->f);
-                us->datafree = (void*)ps_freeimage_gd;
+                us->datafree = ps_freeimage_gd;
                 break;
 #endif
 #ifdef HAVE_GD_GIF
             case FT_GIF:
                 us->data = (void*)gdImageCreateFromGif(us->f);
-                us->datafree = (void*)ps_freeimage_gd;
+                us->datafree = ps_freeimage_gd;
                 break;
 #endif
 #ifdef HAVE_GD_JPEG
index c6485de696cd990bd941af9c3f4c433167b4d8a8..ad0166992690a08e684390f3020562a520021ef1 100644 (file)
@@ -23,7 +23,9 @@ extern "C" {
 
     typedef enum { FT_BMP, FT_GIF, FT_PNG, FT_JPEG, FT_PDF, FT_PS, FT_EPS } imagetype_t;
 
-    typedef struct usershape_s {
+    typedef struct usershape_s usershape_t;
+
+    struct usershape_s {
        Dtlink_t link;
        char *name;
        int macro_id;
@@ -34,8 +36,8 @@ extern "C" {
        unsigned int x, y, w, h, dpi;
        void *data;                   /* data loaded by a renderer */
        size_t datasize;              /* size of data (if mmap'ed) */
-       void (*datafree)(void *data); /* renderer's function for freeing data */
-    } usershape_t;
+       void (*datafree)(usershape_t *us); /* renderer's function for freeing data */
+    };
 
 #ifdef __cplusplus
 }
index 7adf911ced7f520a3e010acfbe3b1c63cf2f077b..c31150a502ec876d89f5c222546c33240ed28966 100644 (file)
@@ -96,7 +96,7 @@ static void core_loadimage_ps(GVJ_t * job, usershape_t *us, boxf b, bool filled)
     }
 
     if (us->data) {
-        if (us->datafree != (void*)ps_freeimage) {
+        if (us->datafree != ps_freeimage) {
             us->datafree(us);        /* free incompatible cache data */
             us->data = NULL;
             us->datafree = NULL;
@@ -121,7 +121,7 @@ static void core_loadimage_ps(GVJ_t * job, usershape_t *us, boxf b, bool filled)
                 break;
         }
         if (us->data)
-            us->datafree = (void*)ps_freeimage;
+            us->datafree = ps_freeimage;
     }
 
     if (us->data) {
index 0f104f3a9ef1f25e0d515f5104db862786a38d2a..460a41cd429148f293804b6ccc3adda3b9826c6c 100644 (file)
@@ -51,7 +51,7 @@ static cairo_surface_t* cairo_loadimage(GVJ_t * job, usershape_t *us)
         if (us->datafree == cairo_freeimage)
              surface = (cairo_surface_t*)(us); /* use cached data */
         else {
-             us->datafree(us->data);        /* free incompatible cache data */
+             us->datafree(us);        /* free incompatible cache data */
              us->data = NULL;
         }
     }