diff options
-rw-r--r-- | libhb/ports.c | 26 | ||||
-rw-r--r-- | libhb/ports.h | 3 |
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__ |