@@ -276,18 +276,18 @@ typedef dirent DirEntryType;
276
276
#define lstrcpy strcpy
277
277
#define stricmp strcasecmp
278
278
#define strupr SDL_strupr
279
-
279
+ // error code numbers from original MS strcpy_s return value
280
280
inline int strcpy_s (char *dest, size_t num, const char *source)
281
281
{
282
282
if (!num)
283
- return 22 ;
283
+ return EINVAL ;
284
284
if (!dest)
285
- return 22 ;
285
+ return EINVAL ;
286
286
287
287
if (!source)
288
288
{
289
289
dest[0 ] = ' \0 ' ;
290
- return 22 ;
290
+ return EINVAL ;
291
291
}
292
292
293
293
size_t i;
@@ -297,7 +297,7 @@ inline int strcpy_s(char *dest, size_t num, const char *source)
297
297
return 0 ;
298
298
}
299
299
dest[0 ] = ' \0 ' ;
300
- return 34 ;
300
+ return ERANGE ;
301
301
}
302
302
303
303
template <std::size_t num>
@@ -314,7 +314,7 @@ inline int strncpy_s(char * dest, size_t dst_size, const char * source, size_t n
314
314
}
315
315
316
316
if (!dest || !source || (0 == dst_size))
317
- return 22 ;
317
+ return EINVAL ;
318
318
319
319
size_t i, end;
320
320
if (num < dst_size)
@@ -333,7 +333,7 @@ inline int strncpy_s(char * dest, size_t dst_size, const char * source, size_t n
333
333
334
334
dest[0 ] = ' \0 ' ;
335
335
336
- return 22 ;
336
+ return EINVAL ;
337
337
}
338
338
339
339
template <std::size_t dst_sz>
@@ -342,12 +342,12 @@ inline int strncpy_s(char (&dest)[dst_sz], const char * source, size_t num) { re
342
342
inline int strcat_s (char * dest, size_t num, const char * source)
343
343
{
344
344
if (!dest || (0 == num))
345
- return 22 ;
345
+ return EINVAL ;
346
346
347
347
if (!source)
348
348
{
349
349
dest[0 ] = ' \0 ' ;
350
- return 22 ;
350
+ return EINVAL ;
351
351
}
352
352
353
353
size_t i, j;
@@ -364,18 +364,18 @@ inline int strcat_s(char * dest, size_t num, const char * source)
364
364
}
365
365
366
366
dest[0 ] = ' \0 ' ;
367
- return 34 ;
367
+ return ERANGE ;
368
368
}
369
369
370
370
inline int strncat_s (char * dest, size_t num, const char * source, size_t count)
371
371
{
372
372
if (!dest || (0 == num))
373
- return 22 ;
373
+ return EINVAL ;
374
374
375
375
if (!source)
376
376
{
377
377
dest[0 ] = ' \0 ' ;
378
- return 22 ;
378
+ return EINVAL ;
379
379
}
380
380
381
381
size_t i, j;
@@ -395,7 +395,7 @@ inline int strncat_s(char * dest, size_t num, const char * source, size_t count)
395
395
}
396
396
397
397
dest[0 ] = ' \0 ' ;
398
- return 34 ;
398
+ return ERANGE ;
399
399
}
400
400
401
401
#define _vsnprintf vsnprintf
0 commit comments