[flac-dev] [PATCH 2/2] replace local_strtoull with _strtoui64 in windows

Cristian Rodríguez crrodriguez at opensuse.org
Tue Apr 17 16:35:18 PDT 2012


Previous patch replaced the other local_strtoll with _strtoi64
---
 include/share/compat.h |    3 ++-
 src/metaflac/options.c |   23 +----------------------
 2 files changed, 3 insertions(+), 23 deletions(-)

diff --git a/include/share/compat.h b/include/share/compat.h
index ff5c8af..8ad3698 100644
--- a/include/share/compat.h
+++ b/include/share/compat.h
@@ -61,9 +61,10 @@
 
 #if defined(_MSC_VER)
 #define strtoll _strtoi64
+#define strtoull _strtoui64
 #endif
 
-#if defined(_MSC_VER) 
+#if defined(_MSC_VER)
 #define restrict __restrict
 #endif
 
diff --git a/src/metaflac/options.c b/src/metaflac/options.c
index 43e1f6c..0f227da 100644
--- a/src/metaflac/options.c
+++ b/src/metaflac/options.c
@@ -25,6 +25,7 @@
 #include "utils.h"
 #include "FLAC/assert.h"
 #include "share/alloc.h"
+#include "share/compat.h"
 #include "share/grabbag/replaygain.h"
 #include <ctype.h>
 #include <stdio.h>
@@ -840,34 +841,12 @@ FLAC__bool parse_uint32(const char *src, FLAC__uint32 *dest)
 	return true;
 }
 
-#ifdef _MSC_VER
-/* There's no strtoull() in MSVC6 so we just write a specialized one */
-static FLAC__uint64 local__strtoull(const char *src)
-{
-	FLAC__uint64 ret = 0;
-	int c;
-	FLAC__ASSERT(0 != src);
-	while(0 != (c = *src++)) {
-		c -= '0';
-		if(c >= 0 && c <= 9)
-			ret = (ret * 10) + c;
-		else
-			break;
-	}
-	return ret;
-}
-#endif
-
 FLAC__bool parse_uint64(const char *src, FLAC__uint64 *dest)
 {
 	FLAC__ASSERT(0 != src);
 	if(strlen(src) == 0 || strspn(src, "0123456789") != strlen(src))
 		return false;
-#ifdef _MSC_VER
-	*dest = local__strtoull(src);
-#else
 	*dest = strtoull(src, 0, 10);
-#endif
 	return true;
 }
 
-- 
1.7.7



More information about the flac-dev mailing list