summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libhb/ports.c26
-rw-r--r--libhb/ports.h3
2 files changed, 29 insertions, 0 deletions
diff --git a/libhb/ports.c b/libhb/ports.c
index b29368e07..7e5421da1 100644
--- a/libhb/ports.c
+++ b/libhb/ports.c
@@ -747,3 +747,29 @@ void hb_net_close( hb_net_t ** _n )
*_n = NULL;
}
+#ifdef SYS_MINGW
+char *strtok_r(char *s, const char *delim, char **save_ptr)
+{
+ char *token;
+
+ if (s == NULL) s = *save_ptr;
+
+ /* Scan leading delimiters. */
+ s += strspn(s, delim);
+ if (*s == '\0') return NULL;
+
+ /* Find the end of the token. */
+ token = s;
+ s = strpbrk(token, delim);
+ if (s == NULL)
+ /* This token finishes the string. */
+ *save_ptr = strchr(token, '\0');
+ else {
+ /* Terminate the token and make *SAVE_PTR point past it. */
+ *s = '\0';
+ *save_ptr = s + 1;
+ }
+
+ return token;
+}
+#endif
diff --git a/libhb/ports.h b/libhb/ports.h
index 6f451b42b..7b743c437 100644
--- a/libhb/ports.h
+++ b/libhb/ports.h
@@ -19,6 +19,9 @@
uint64_t hb_get_date();
void hb_snooze( int delay );
int hb_get_cpu_count();
+#ifdef SYS_MINGW
+char *strtok_r(char *s, const char *delim, char **save_ptr);
+#endif
#ifdef __LIBHB__