diff --git a/Magick++/lib/ImageRef.cpp b/Magick++/lib/ImageRef.cpp
index 8a007b4..c736a89 100644
--- a/Magick++/lib/ImageRef.cpp
+++ b/Magick++/lib/ImageRef.cpp
@@ -59,7 +59,7 @@
   if( _id > -1 )
     {
       char id[MaxTextExtent];
-      sprintf(id,"%ld",(long) _id);
+      sprintf(id,"%.20g",(double) _id);
       DeleteImageRegistry( id );
       _id=-1;
     }
@@ -97,7 +97,7 @@
   if( _id > -1 )
     {
       char id[MaxTextExtent];
-      sprintf(id,"%ld",(long) _id);
+      sprintf(id,"%.20g",(double) _id);
       DeleteImageRegistry( id );
     }
   _id = id_;