@@ -225,20 +225,22 @@ void Builder::addLine(const DL_LineData& data) {
225
225
226
226
SHPObject *psShape;
227
227
int dim = polyVertex.size ();
228
- double xv [dim];
229
- double yv [dim];
230
- double zv [dim];
228
+ double *xv = new double [dim];
229
+ double *yv = new double [dim];
230
+ double *zv = new double [dim];
231
231
232
232
for (int i=0 ; i < dim; i++)
233
233
{
234
234
xv[i] = polyVertex[i].x ;
235
235
yv[i] = polyVertex[i].y ;
236
236
zv[i] = polyVertex[i].z ;
237
-
238
237
}
239
238
240
- psShape = SHPCreateObject ( shapefileType, fetchedprims, 0 , NULL , NULL ,
241
- dim, xv, yv, zv, NULL );
239
+ psShape = SHPCreateObject ( shapefileType, fetchedprims, 0 , NULL , NULL , dim, xv, yv, zv, NULL );
240
+
241
+ delete [] xv;
242
+ delete [] yv;
243
+ delete [] zv;
242
244
243
245
shpObjects.push_back (psShape);
244
246
@@ -363,9 +365,9 @@ void Builder::addArc(const DL_ArcData& data)
363
365
364
366
SHPObject *psShape;
365
367
int dim = arcPoints.size ();
366
- double xv [dim];
367
- double yv [dim];
368
- double zv [dim];
368
+ double *xv = new double [dim];
369
+ double *yv = new double [dim];
370
+ double *zv = new double [dim];
369
371
370
372
for (int i=0 ; i < dim; i++)
371
373
{
@@ -375,8 +377,11 @@ void Builder::addArc(const DL_ArcData& data)
375
377
376
378
}
377
379
378
- psShape = SHPCreateObject ( shapefileType, fetchedprims, 0 , NULL , NULL ,
379
- dim, xv, yv, zv, NULL );
380
+ psShape = SHPCreateObject ( shapefileType, fetchedprims, 0 , NULL , NULL , dim, xv, yv, zv, NULL );
381
+
382
+ delete [] xv;
383
+ delete [] yv;
384
+ delete [] zv;
380
385
381
386
shpObjects.push_back (psShape);
382
387
@@ -427,9 +432,9 @@ void Builder::addCircle(const DL_CircleData& data)
427
432
428
433
SHPObject *psShape;
429
434
int dim = circlePoints.size ();
430
- double xv [dim];
431
- double yv [dim];
432
- double zv [dim];
435
+ double *xv = new double [dim];
436
+ double *yv = new double [dim];
437
+ double *zv = new double [dim];
433
438
434
439
for (int i=0 ; i < dim; i++)
435
440
{
@@ -439,8 +444,11 @@ void Builder::addCircle(const DL_CircleData& data)
439
444
440
445
}
441
446
442
- psShape = SHPCreateObject ( shapefileType, fetchedprims, 0 , NULL , NULL ,
443
- dim, xv, yv, zv, NULL );
447
+ psShape = SHPCreateObject ( shapefileType, fetchedprims, 0 , NULL , NULL , dim, xv, yv, zv, NULL );
448
+
449
+ delete [] xv;
450
+ delete [] yv;
451
+ delete [] zv;
444
452
445
453
shpObjects.push_back (psShape);
446
454
@@ -502,9 +510,9 @@ void Builder::FinalizeAnyPolyline()
502
510
503
511
SHPObject *psObject;
504
512
int dim = polyVertex.size ();
505
- double xv [dim];
506
- double yv [dim];
507
- double zv [dim];
513
+ double *xv = new double [dim];
514
+ double *yv = new double [dim];
515
+ double *zv = new double [dim];
508
516
509
517
for (int i=0 ; i < dim; i++)
510
518
{
@@ -514,8 +522,11 @@ void Builder::FinalizeAnyPolyline()
514
522
515
523
}
516
524
517
- psObject = SHPCreateObject ( shapefileType, fetchedprims, 0 , NULL , NULL ,
518
- dim, xv, yv, zv, NULL );
525
+ psObject = SHPCreateObject ( shapefileType, fetchedprims, 0 , NULL , NULL , dim, xv, yv, zv, NULL );
526
+
527
+ delete [] xv;
528
+ delete [] yv;
529
+ delete [] zv;
519
530
520
531
shpObjects.push_back (psObject);
521
532
0 commit comments