Skip to content

Commit ce55379

Browse files
committed
croak if allocation failed
1 parent a9d4c26 commit ce55379

1 file changed

Lines changed: 26 additions & 1 deletion

File tree

plplot.pd

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -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

Comments
 (0)