diff options
| author | 2017-02-24 22:10:56 +0100 | |
|---|---|---|
| committer | 2017-02-24 22:10:56 +0100 | |
| commit | e9c805ffdec34c66fdc751ea222fa40678c71351 (patch) | |
| tree | caf4e88914996906434b2547029f8eb2680cbdb4 /src | |
| parent | aaec66651aba5f617c5c2c22b019d115e2db8e8f (diff) | |
| download | idevicerestore-e9c805ffdec34c66fdc751ea222fa40678c71351.tar.gz idevicerestore-e9c805ffdec34c66fdc751ea222fa40678c71351.tar.bz2  | |
common: Add strsep() implementation for platforms lacking it
Diffstat (limited to 'src')
| -rw-r--r-- | src/common.c | 17 | ||||
| -rw-r--r-- | src/common.h | 8 | 
2 files changed, 25 insertions, 0 deletions
diff --git a/src/common.c b/src/common.c index 691137d..7bbe33a 100644 --- a/src/common.c +++ b/src/common.c @@ -21,6 +21,10 @@   * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA   */ +#ifdef HAVE_CONFIG_H +#include <config.h> +#endif +  #include <stdio.h>  #include <stdlib.h>  #include <string.h> @@ -282,3 +286,16 @@ void idevicerestore_progress(struct idevicerestore_client_t* client, int step, d  		}  	}  } + +#ifndef HAVE_STRSEP +char* strsep(char** strp, const char* delim) +{ +        char *p, *s; +        if (strp == NULL || *strp == NULL || **strp == '\0') return NULL; +        s = *strp; +        p = s + strcspn(s, delim); +        if (*p != '\0') *p++ = '\0'; +        *strp = p; +        return s; +} +#endif diff --git a/src/common.h b/src/common.h index 8340d03..5f1d763 100644 --- a/src/common.h +++ b/src/common.h @@ -28,6 +28,10 @@  extern "C" {  #endif +#ifdef HAVE_CONFIG_H +#include <config.h> +#endif +  #include <plist/plist.h>  #include <libirecovery.h> @@ -131,6 +135,10 @@ int mkdir_with_parents(const char *dir, int mode);  void idevicerestore_progress(struct idevicerestore_client_t* client, int step, double progress); +#ifndef HAVE_STRSEP +char* strsep(char** strp, const char* delim); +#endif +  #ifdef __cplusplus  }  #endif  | 
