@@ -317,12 +317,12 @@ static int flushBuffer(bigWigFile_t *fp) {
317
317
if (!wb -> ltype ) return 0 ;
318
318
319
319
//Fill in the header
320
- if (!memcpy (wb -> p , & (wb -> tid ), sizeof (uint32_t ))) return 1 ;
321
- if (!memcpy (wb -> p + 4 , & (wb -> start ), sizeof (uint32_t ))) return 2 ;
322
- if (!memcpy (wb -> p + 8 , & (wb -> end ), sizeof (uint32_t ))) return 3 ;
323
- if (!memcpy (wb -> p + 12 , & (wb -> step ), sizeof (uint32_t ))) return 4 ;
324
- if (!memcpy (wb -> p + 16 , & (wb -> span ), sizeof (uint32_t ))) return 5 ;
325
- if (!memcpy (wb -> p + 20 , & (wb -> ltype ), sizeof (uint8_t ))) return 6 ;
320
+ if (!memcpy (( char * ) wb -> p , & (wb -> tid ), sizeof (uint32_t ))) return 1 ;
321
+ if (!memcpy (( char * ) wb -> p + 4 , & (wb -> start ), sizeof (uint32_t ))) return 2 ;
322
+ if (!memcpy (( char * ) wb -> p + 8 , & (wb -> end ), sizeof (uint32_t ))) return 3 ;
323
+ if (!memcpy (( char * ) wb -> p + 12 , & (wb -> step ), sizeof (uint32_t ))) return 4 ;
324
+ if (!memcpy (( char * ) wb -> p + 16 , & (wb -> span ), sizeof (uint32_t ))) return 5 ;
325
+ if (!memcpy (( char * ) wb -> p + 20 , & (wb -> ltype ), sizeof (uint8_t ))) return 6 ;
326
326
//1 byte padding
327
327
//Determine the number of items
328
328
switch (wb -> ltype ) {
@@ -338,7 +338,7 @@ static int flushBuffer(bigWigFile_t *fp) {
338
338
default :
339
339
return 7 ;
340
340
}
341
- if (!memcpy (wb -> p + 22 , & nItems , sizeof (uint16_t ))) return 8 ;
341
+ if (!memcpy (( char * ) wb -> p + 22 , & nItems , sizeof (uint16_t ))) return 8 ;
342
342
343
343
if (sz ) {
344
344
//compress
@@ -399,9 +399,9 @@ int bwAddIntervals(bigWigFile_t *fp, const char* const* chrom, const uint32_t *s
399
399
wb -> span = 0 ;
400
400
wb -> step = 0 ;
401
401
}
402
- if (!memcpy (wb -> p + wb -> l , start , sizeof (uint32_t ))) return 7 ;
403
- if (!memcpy (wb -> p + wb -> l + 4 , end , sizeof (uint32_t ))) return 8 ;
404
- if (!memcpy (wb -> p + wb -> l + 8 , values , sizeof (float ))) return 9 ;
402
+ if (!memcpy (( char * ) wb -> p + wb -> l , start , sizeof (uint32_t ))) return 7 ;
403
+ if (!memcpy (( char * ) wb -> p + wb -> l + 4 , end , sizeof (uint32_t ))) return 8 ;
404
+ if (!memcpy (( char * ) wb -> p + wb -> l + 8 , values , sizeof (float ))) return 9 ;
405
405
updateStats (fp , end [0 ]- start [0 ], values [0 ]);
406
406
wb -> l += 12 ;
407
407
@@ -420,9 +420,9 @@ int bwAddIntervals(bigWigFile_t *fp, const char* const* chrom, const uint32_t *s
420
420
flushBuffer (fp );
421
421
wb -> start = start [i ];
422
422
}
423
- if (!memcpy (wb -> p + wb -> l , & (start [i ]), sizeof (uint32_t ))) return 11 ;
424
- if (!memcpy (wb -> p + wb -> l + 4 , & (end [i ]), sizeof (uint32_t ))) return 12 ;
425
- if (!memcpy (wb -> p + wb -> l + 8 , & (values [i ]), sizeof (float ))) return 13 ;
423
+ if (!memcpy (( char * ) wb -> p + wb -> l , & (start [i ]), sizeof (uint32_t ))) return 11 ;
424
+ if (!memcpy (( char * ) wb -> p + wb -> l + 4 , & (end [i ]), sizeof (uint32_t ))) return 12 ;
425
+ if (!memcpy (( char * ) wb -> p + wb -> l + 8 , & (values [i ]), sizeof (float ))) return 13 ;
426
426
updateStats (fp , end [i ]- start [i ], values [i ]);
427
427
wb -> l += 12 ;
428
428
}
@@ -447,9 +447,9 @@ int bwAppendIntervals(bigWigFile_t *fp, const uint32_t *start, const uint32_t *e
447
447
flushBuffer (fp );
448
448
wb -> start = start [i ];
449
449
}
450
- if (!memcpy (wb -> p + wb -> l , & (start [i ]), sizeof (uint32_t ))) return 4 ;
451
- if (!memcpy (wb -> p + wb -> l + 4 , & (end [i ]), sizeof (uint32_t ))) return 5 ;
452
- if (!memcpy (wb -> p + wb -> l + 8 , & (values [i ]), sizeof (float ))) return 6 ;
450
+ if (!memcpy (( char * ) wb -> p + wb -> l , & (start [i ]), sizeof (uint32_t ))) return 4 ;
451
+ if (!memcpy (( char * ) wb -> p + wb -> l + 4 , & (end [i ]), sizeof (uint32_t ))) return 5 ;
452
+ if (!memcpy (( char * ) wb -> p + wb -> l + 8 , & (values [i ]), sizeof (float ))) return 6 ;
453
453
updateStats (fp , end [i ]- start [i ], values [i ]);
454
454
wb -> l += 12 ;
455
455
}
@@ -482,8 +482,8 @@ int bwAddIntervalSpans(bigWigFile_t *fp, const char *chrom, const uint32_t *star
482
482
flushBuffer (fp );
483
483
wb -> start = start [i ];
484
484
}
485
- if (!memcpy (wb -> p + wb -> l , & (start [i ]), sizeof (uint32_t ))) return 5 ;
486
- if (!memcpy (wb -> p + wb -> l + 4 , & (values [i ]), sizeof (float ))) return 6 ;
485
+ if (!memcpy (( char * ) wb -> p + wb -> l , & (start [i ]), sizeof (uint32_t ))) return 5 ;
486
+ if (!memcpy (( char * ) wb -> p + wb -> l + 4 , & (values [i ]), sizeof (float ))) return 6 ;
487
487
updateStats (fp , span , values [i ]);
488
488
wb -> l += 8 ;
489
489
}
@@ -506,8 +506,8 @@ int bwAppendIntervalSpans(bigWigFile_t *fp, const uint32_t *start, const float *
506
506
flushBuffer (fp );
507
507
wb -> start = start [i ];
508
508
}
509
- if (!memcpy (wb -> p + wb -> l , & (start [i ]), sizeof (uint32_t ))) return 4 ;
510
- if (!memcpy (wb -> p + wb -> l + 4 , & (values [i ]), sizeof (float ))) return 5 ;
509
+ if (!memcpy (( char * ) wb -> p + wb -> l , & (start [i ]), sizeof (uint32_t ))) return 4 ;
510
+ if (!memcpy (( char * ) wb -> p + wb -> l + 4 , & (values [i ]), sizeof (float ))) return 5 ;
511
511
updateStats (fp , wb -> span , values [i ]);
512
512
wb -> l += 8 ;
513
513
}
@@ -540,7 +540,7 @@ int bwAddIntervalSpanSteps(bigWigFile_t *fp, const char *chrom, uint32_t start,
540
540
flushBuffer (fp );
541
541
wb -> start = wb -> end ;
542
542
}
543
- if (!memcpy (wb -> p + wb -> l , & (values [i ]), sizeof (float ))) return 5 ;
543
+ if (!memcpy (( char * ) wb -> p + wb -> l , & (values [i ]), sizeof (float ))) return 5 ;
544
544
updateStats (fp , wb -> span , values [i ]);
545
545
wb -> l += 4 ;
546
546
}
@@ -563,7 +563,7 @@ int bwAppendIntervalSpanSteps(bigWigFile_t *fp, const float *values, uint32_t n)
563
563
flushBuffer (fp );
564
564
wb -> start = wb -> end ;
565
565
}
566
- if (!memcpy (wb -> p + wb -> l , & (values [i ]), sizeof (float ))) return 4 ;
566
+ if (!memcpy (( char * ) wb -> p + wb -> l , & (values [i ]), sizeof (float ))) return 4 ;
567
567
updateStats (fp , wb -> span , values [i ]);
568
568
wb -> l += 4 ;
569
569
}
@@ -754,7 +754,7 @@ int writeIndex(bigWigFile_t *fp) {
754
754
}
755
755
if (!root ) return 4 ;
756
756
fp -> idx -> root = root ;
757
-
757
+
758
758
ll = fp -> writeBuffer -> firstIndexNode ;
759
759
while (ll ) {
760
760
p = ll -> next ;
@@ -994,8 +994,8 @@ int addIntervalValue(bigWigFile_t *fp, uint64_t *nEntries, double *sum, double *
994
994
newBuffer -> p = calloc (itemsPerSlot , 32 );
995
995
if (!newBuffer -> p ) goto error ;
996
996
newBuffer -> m = itemsPerSlot * 32 ;
997
- memcpy (newBuffer -> p , buffer -> p + buffer -> l - 32 , 4 );
998
- memcpy (newBuffer -> p + 4 , buffer -> p + buffer -> l - 28 , 4 );
997
+ memcpy (newBuffer -> p , ( unsigned char * ) buffer -> p + buffer -> l - 32 , 4 );
998
+ memcpy (( unsigned char * ) newBuffer -> p + 4 , ( unsigned char * ) buffer -> p + buffer -> l - 28 , 4 );
999
999
((uint32_t * ) newBuffer -> p )[2 ] = ((uint32_t * ) newBuffer -> p )[1 ] + zoom ;
1000
1000
* sum = * sumsq = 0.0 ;
1001
1001
rv = updateInterval (fp , newBuffer , sum , sumsq , zoom , tid , start , end , value );
@@ -1122,7 +1122,7 @@ int writeZoomLevels(bigWigFile_t *fp) {
1122
1122
while (ll ) {
1123
1123
p = ll -> next ;
1124
1124
free (ll );
1125
- ll = p ;
1125
+ ll = p ;
1126
1126
}
1127
1127
1128
1128
0 commit comments