view osdep/strsep.c @ 17645:8db0816a9226

upport another G4 flavour: MPC7447* chips. (MPC7448, MPC7445 and MPC7457 are still not supported currently, but it remains to be seen if they have been used in any real computer.)
author gpoirier
date Sat, 18 Feb 2006 20:04:42 +0000
parents 08cac43f1e38
children 936209c39ed1
line wrap: on
line source

/* strsep implementation for systems that do not have it in libc */

#include <stdio.h>
#include <string.h>

#include "config.h"

#ifndef HAVE_STRSEP
char *strsep(char **stringp, const char *delim) {
  char *begin, *end;

  begin = *stringp;
  if(begin == NULL)
    return NULL;

  if(delim[0] == '\0' || delim[1] == '\0') {
    char ch = delim[0];

    if(ch == '\0')
      end = NULL;
    else {
      if(*begin == ch)
        end = begin;
      else if(*begin == '\0')
        end = NULL;
      else
        end = strchr(begin + 1, ch);
    }
  }
  else
    end = strpbrk(begin, delim);

  if(end) {
    *end++ = '\0';
    *stringp = end;
  }
  else
    *stringp = NULL;
 
  return begin;
}
#endif