@@ -30,10 +30,10 @@ void test2()
3030 char *smallbuffer = (char *)malloc (sizeof (char ) * 10 );
3131 char *bigbuffer = (char *)malloc (sizeof (char ) * 20 );
3232
33- memcpy (bigbuffer, smallbuffer, 10 ); // GOOD
34- memcpy (bigbuffer, smallbuffer, 20 ); // BAD: over-read
35- memcpy (smallbuffer, bigbuffer, 10 ); // GOOD
36- memcpy (smallbuffer, bigbuffer, 20 ); // BAD: over-write
33+ memcpy (bigbuffer, smallbuffer, sizeof ( char ) * 10 ); // GOOD
34+ memcpy (bigbuffer, smallbuffer, sizeof ( char ) * 20 ); // BAD: over-read
35+ memcpy (smallbuffer, bigbuffer, sizeof ( char ) * 10 ); // GOOD
36+ memcpy (smallbuffer, bigbuffer, sizeof ( char ) * 20 ); // BAD: over-write
3737
3838 free (bigbuffer);
3939 free (smallbuffer);
@@ -46,10 +46,10 @@ void test3()
4646 smallbuffer = new char [10 ];
4747 bigbuffer = new char [20 ];
4848
49- memcpy (bigbuffer, smallbuffer, 10 ); // GOOD
50- memcpy (bigbuffer, smallbuffer, 20 ); // BAD: over-read
51- memcpy (smallbuffer, bigbuffer, 10 ); // GOOD
52- memcpy (smallbuffer, bigbuffer, 20 ); // BAD: over-write
49+ memcpy (bigbuffer, smallbuffer, sizeof ( char [ 10 ]) ); // GOOD
50+ memcpy (bigbuffer, smallbuffer, sizeof ( char [ 20 ]) ); // BAD: over-read
51+ memcpy (smallbuffer, bigbuffer, sizeof ( char [ 10 ]) ); // GOOD
52+ memcpy (smallbuffer, bigbuffer, sizeof ( char [ 20 ]) ); // BAD: over-write
5353
5454 delete [] bigbuffer;
5555 delete [] smallbuffer;
0 commit comments