@@ -3796,6 +3796,7 @@ pp_def ('plsurf3d',
37963796 size_x = $SIZE(nx);
37973797 size_y = $SIZE(ny);
37983798 plAlloc2dGrid (&zz, size_x, size_y);
3799+ if (!zz) $CROAK("Failed to allocate memory for grid");
37993800 for (i = 0; i < size_x; i++)
38003801 for (j = 0; j < size_y; j++)
38013802 zz[i][j] = $z(nx => i, ny => j);
@@ -3815,6 +3816,7 @@ pp_def('plsurf3dl',
38153816 size_x = $SIZE(nx);
38163817 size_y = $SIZE(ny);
38173818 plAlloc2dGrid (&zz, size_x, size_y);
3819+ if (!zz) $CROAK("Failed to allocate memory for grid");
38183820 for (i = 0; i < size_x; i++)
38193821 for (j = 0; j < size_y; j++)
38203822 zz[i][j] = $z(nx => i, ny => j);
@@ -3922,7 +3924,16 @@ pp_def ('plAlloc2dGrid',
39223924 PLcGrid2 *grid = (PLcGrid2*) malloc(sizeof(PLcGrid2));
39233925 if (!grid) $CROAK("Failed to allocate memory for grid");
39243926 plAlloc2dGrid(&(grid->xg), nx, ny);
3927+ if (!grid->xg) {
3928+ free(grid);
3929+ $CROAK("Failed to allocate memory for grid");
3930+ }
39253931 plAlloc2dGrid(&(grid->yg), nx, ny);
3932+ if (!grid->yg) {
3933+ free(grid);
3934+ plFree2dGrid(grid->xg, nx, ny);
3935+ $CROAK("Failed to allocate memory for grid");
3936+ }
39263937 for (i = 0; i < nx; i++)
39273938 for (j = 0; j < ny; j++) {
39283939 grid->xg[i][j] = $xg(nx => i, ny => j);
@@ -4058,6 +4069,7 @@ pp_def ('plshades',
40584069 PLFLT **z;
40594070
40604071 plAlloc2dGrid (&z, nx, ny);
4072+ if (!z) $CROAK("Failed to allocate memory for grid");
40614073
40624074 for (i = 0; i < nx; i++)
40634075 for (j = 0; j < ny; j++)
@@ -4094,6 +4106,7 @@ pp_def ('plcont',
40944106 size_y = $SIZE(ny);
40954107
40964108 plAlloc2dGrid (&ff, size_x, size_y);
4109+ if (!ff) $CROAK("Failed to allocate memory for grid");
40974110
40984111 for (i = 0; i < size_x; i++)
40994112 for (j = 0; j < size_y; j++)
@@ -4124,6 +4137,7 @@ pp_def ('plmesh',
41244137 size_y = $SIZE(ny);
41254138
41264139 plAlloc2dGrid (&zz, size_x, size_y);
4140+ if (!zz) $CROAK("Failed to allocate memory for grid");
41274141
41284142 for (i = 0; i < size_x; i++)
41294143 for (j = 0; j < size_y; j++)
@@ -4147,6 +4161,7 @@ pp_def ('plmeshc',
41474161 size_y = $SIZE(ny);
41484162
41494163 plAlloc2dGrid (&zz, size_x, size_y);
4164+ if (!zz) $CROAK("Failed to allocate memory for grid");
41504165
41514166 for (i = 0; i < size_x; i++)
41524167 for (j = 0; j < size_y; j++)
@@ -4171,6 +4186,7 @@ pp_def ('plot3d',
41714186 size_y = $SIZE(ny);
41724187
41734188 plAlloc2dGrid (&zz, size_x, size_y);
4189+ if (!zz) $CROAK("Failed to allocate memory for grid");
41744190
41754191 for (i = 0; i < size_x; i++)
41764192 for (j = 0; j < size_y; j++)
@@ -4194,6 +4210,7 @@ pp_def ('plot3dc',
41944210 size_y = $SIZE(ny);
41954211
41964212 plAlloc2dGrid (&zz, size_x, size_y);
4213+ if (!zz) $CROAK("Failed to allocate memory for grid");
41974214
41984215 for (i = 0; i < size_x; i++)
41994216 for (j = 0; j < size_y; j++)
@@ -4242,7 +4259,7 @@ pp_def ('plshade1',
42424259 size_y = $SIZE(ny);
42434260
42444261 plAlloc2dGrid (&a, size_x, size_y);
4245- if(a == NULL ) $CROAK("Failed to allocate memory in plshade1_pp ");
4262+ if (!a ) $CROAK("Failed to allocate memory");
42464263
42474264 for (i = 0; i < size_x; i++)
42484265 for (j = 0; j < size_y; j++)
@@ -4275,6 +4292,7 @@ pp_def ('plimage',
42754292 size_y = $SIZE(ny);
42764293
42774294 plAlloc2dGrid (&idata, size_x, size_y);
4295+ if (!idata) $CROAK("Failed to allocate memory for grid");
42784296
42794297 for (i = 0; i < size_x; i++)
42804298 for (j = 0; j < size_y; j++)
@@ -4312,6 +4330,7 @@ pp_def ('plimagefr',
43124330 PLPTR_RECEIVE_SV($COMP(pltr_data));
43134331
43144332 plAlloc2dGrid (&idata, size_x, size_y);
4333+ if (!idata) $CROAK("Failed to allocate memory for grid");
43154334
43164335 for (i = 0; i < size_x; i++)
43174336 for (j = 0; j < size_y; j++)
@@ -4607,6 +4626,7 @@ pp_def ('plgriddata',
46074626 size_y = $SIZE(nptsy);
46084627
46094628 plAlloc2dGrid (&zg, size_x, size_y);
4629+ if (!zg) $CROAK("Failed to allocate memory for grid");
46104630
46114631 c_plgriddata ($P(x), $P(y), $P(z), $SIZE(npts),
46124632 $P(xg), size_x, $P(yg), size_y,
@@ -5150,7 +5170,12 @@ pp_def ('plvect',
51505170 size_y = $SIZE(ny);
51515171
51525172 plAlloc2dGrid (&u, size_x, size_y);
5173+ if (!u) $CROAK("Failed to allocate memory for grid");
51535174 plAlloc2dGrid (&v, size_x, size_y);
5175+ if (!v) {
5176+ plFree2dGrid (u, size_x, size_y);
5177+ $CROAK("Failed to allocate memory for grid");
5178+ }
51545179
51555180 for (i = 0; i < size_x; i++)
51565181 for (j = 0; j < size_y; j++) {
0 commit comments