diff --git a/graf2d/asimage/src/TASImage.cxx b/graf2d/asimage/src/TASImage.cxx
index 580b91396f94c17837d006031ea9bf60e2a6679c..49ba8bf58e005aabaef1b501cf0045dd44704b2f 100644
--- a/graf2d/asimage/src/TASImage.cxx
+++ b/graf2d/asimage/src/TASImage.cxx
@@ -2900,7 +2900,8 @@ Double_t *TASImage::Vectorize(UInt_t max_colors, UInt_t dither, Int_t opaque_thr
    fPalette = *pal;
    fImage->alt.vector = vec;
    UnZoom();
-   if (res) delete res;
+   // ROOT-7647: res is allocated with `safemalloc` by colormap_asimage
+   if (res) safefree(res);
    return (Double_t*)fImage->alt.vector;
 }