libcvd-members
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[libcvd-members] libcvd/cvd/internal/io pnm_grok.h


From: Edward Rosten
Subject: [libcvd-members] libcvd/cvd/internal/io pnm_grok.h
Date: Thu, 24 Apr 2008 16:12:39 +0000

CVSROOT:        /cvsroot/libcvd
Module name:    libcvd
Changes by:     Edward Rosten <edrosten>        08/04/24 16:12:39

Modified files:
        cvd/internal/io: pnm_grok.h 

Log message:
        Fixed valgrind error (new[], delete)

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/libcvd/cvd/internal/io/pnm_grok.h?cvsroot=libcvd&r1=1.5&r2=1.6

Patches:
Index: pnm_grok.h
===================================================================
RCS file: /cvsroot/libcvd/libcvd/cvd/internal/io/pnm_grok.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -b -r1.5 -r1.6
--- pnm_grok.h  4 May 2006 00:10:21 -0000       1.5
+++ pnm_grok.h  24 Apr 2008 16:12:38 -0000      1.6
@@ -166,10 +166,10 @@
       typedef Rgb<unsigned short> array;
       static void write(const BasicImage<T>& im, std::ostream& out) {
        writePNMHeader(out, 3, im.size(), 65535, false, "");    
-       std::auto_ptr<array> rowbuf(new array[im.size().x]);
+       std::vector<array> rowbuf[im.size().x];
        for (int r=0; r<im.size().y; r++) {
-         Pixel::ConvertPixels<T, array>::convert(im[r], rowbuf.get(), 
im.size().x);
-         writePNMPixels(out, (const unsigned short*)rowbuf.get(), 
im.size().x*3, false);
+         Pixel::ConvertPixels<T, array>::convert(im[r], &rowbuf[0], 
im.size().x);
+         writePNMPixels(out, (const unsigned short*)&rowbuf[0], im.size().x*3, 
false);
        }       
       }
     };
@@ -178,10 +178,10 @@
       typedef Rgb<byte> array;
       static void write(const BasicImage<T>& im, std::ostream& out) {
        writePNMHeader(out, 3, im.size(), 255, false, "");      
-       std::auto_ptr<array> rowbuf(new array[im.size().x]);
+       std::vector<array> rowbuf[im.size().x];
        for (int r=0; r<im.size().y; r++) {
-         Pixel::ConvertPixels<T, array>::convert(im[r], rowbuf.get(), 
im.size().x);
-         writePNMPixels(out, (const byte*)rowbuf.get(), im.size().x*3, false);
+         Pixel::ConvertPixels<T, array>::convert(im[r], &rowbuf[0], 
im.size().x);
+         writePNMPixels(out, (const byte*)&rowbuf[0], im.size().x*3, false);
        }       
       }
     };
@@ -190,10 +190,10 @@
       typedef unsigned short S;
       static void write(const BasicImage<T>& im, std::ostream& out) {
        writePNMHeader(out, 1, im.size(), 65535, false, "");    
-       std::auto_ptr<S> rowbuf(new S[im.size().x]);
+       std::vector<S> rowbuf(im.size().x);
        for (int r=0; r<im.size().y; r++) {
-         Pixel::ConvertPixels<T, S>::convert(im[r], rowbuf.get(), im.size().x);
-         writePNMPixels(out, rowbuf.get(), im.size().x, false);
+         Pixel::ConvertPixels<T, S>::convert(im[r], &rowbuf[0], im.size().x);
+         writePNMPixels(out, &rowbuf[0], im.size().x, false);
        }       
       }
     };
@@ -202,10 +202,10 @@
       typedef byte S;
       static void write(const BasicImage<T>& im, std::ostream& out) {
        writePNMHeader(out, 1, im.size(), 255, false, "");      
-       std::auto_ptr<S> rowbuf(new S[im.size().x]);
+       std::vector<S> rowbuf(im.size().x);
        for (int r=0; r<im.size().y; r++) {
-         Pixel::ConvertPixels<T, S>::convert(im[r], rowbuf.get(), im.size().x);
-         writePNMPixels(out, rowbuf.get(), im.size().x, false);
+         Pixel::ConvertPixels<T, S>::convert(im[r], &rowbuf[0], im.size().x);
+         writePNMPixels(out, &rowbuf[0], im.size().x, false);
        }       
       }
     };




reply via email to

[Prev in Thread] Current Thread [Next in Thread]