Changeset fc6dd18 in mainline
- Timestamp:
- 2009-12-13T15:13:01Z (15 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 1313ee9
- Parents:
- 531695f
- Location:
- uspace/lib/libc
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/libc/generic/string.c
r531695f rfc6dd18 896 896 } 897 897 898 char *str_dup(const char *src) 899 { 900 size_t size = str_size(src); 901 void *dest = malloc(size + 1); 902 903 if (dest == NULL) 904 return (char *) NULL; 905 906 return (char *) memcpy(dest, src, size + 1); 907 } 908 909 char *str_ndup(const char *src, size_t max_size) 910 { 911 size_t size = str_size(src); 912 if (size > max_size) 913 size = max_size; 914 915 char *dest = (char *) malloc(size + 1); 916 917 if (dest == NULL) 918 return (char *) NULL; 919 920 memcpy(dest, src, size); 921 dest[size] = 0; 922 return dest; 923 } 924 898 925 899 926 /** Convert initial part of string to unsigned long according to given base. … … 920 947 } 921 948 922 char *str_dup(const char *src)923 {924 size_t size = str_size(src);925 void *dest = malloc(size + 1);926 927 if (dest == NULL)928 return (char *) NULL;929 930 return (char *) memcpy(dest, src, size + 1);931 }932 933 949 char *strtok(char *s, const char *delim) 934 950 { -
uspace/lib/libc/include/string.h
r531695f rfc6dd18 84 84 85 85 extern char *str_dup(const char *); 86 extern char *str_ndup(const char *, size_t max_size); 86 87 87 88 /*
Note:
See TracChangeset
for help on using the changeset viewer.