libblkid: move string trim function to strutils.h
Signed-off-by: Karel Zak <kzak@redhat.com>
This commit is contained in:
parent
cb4d680467
commit
22e9e9c8e9
|
@ -161,4 +161,41 @@ static inline const char *skip_blank(const char *p)
|
|||
return p;
|
||||
}
|
||||
|
||||
|
||||
/* Removes whitespace from the right-hand side of a string (trailing
|
||||
* whitespace).
|
||||
*
|
||||
* Returns size of the new string (without \0).
|
||||
*/
|
||||
static inline size_t rtrim_whitespace(unsigned char *str)
|
||||
{
|
||||
size_t i = strlen((char *) str);
|
||||
|
||||
while (i--) {
|
||||
if (!isspace(str[i]))
|
||||
break;
|
||||
}
|
||||
str[++i] = '\0';
|
||||
return i;
|
||||
}
|
||||
|
||||
/* Removes whitespace from the left-hand side of a string.
|
||||
*
|
||||
* Returns size of the new string (without \0).
|
||||
*/
|
||||
static inline size_t ltrim_whitespace(unsigned char *str)
|
||||
{
|
||||
size_t len;
|
||||
unsigned char *p;
|
||||
|
||||
for (p = str; p && isspace(*p); p++);
|
||||
|
||||
len = strlen((char *) p);
|
||||
|
||||
if (len && p > str)
|
||||
memmove(str, p, len + 1);
|
||||
|
||||
return len;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
|
|
@ -111,6 +111,7 @@
|
|||
#include "blkidP.h"
|
||||
#include "all-io.h"
|
||||
#include "sysfs.h"
|
||||
#include "strutils.h"
|
||||
|
||||
/* chains */
|
||||
extern const struct blkid_chaindrv superblocks_drv;
|
||||
|
@ -1717,14 +1718,7 @@ int blkid_uuid_is_empty(const unsigned char *buf, size_t len)
|
|||
*/
|
||||
size_t blkid_rtrim_whitespace(unsigned char *str)
|
||||
{
|
||||
size_t i = strlen((char *) str);
|
||||
|
||||
while (i--) {
|
||||
if (!isspace(str[i]))
|
||||
break;
|
||||
}
|
||||
str[++i] = '\0';
|
||||
return i;
|
||||
return rtrim_whitespace(str);
|
||||
}
|
||||
|
||||
/* Removes whitespace from the left-hand side of a string.
|
||||
|
@ -1733,18 +1727,9 @@ size_t blkid_rtrim_whitespace(unsigned char *str)
|
|||
*/
|
||||
size_t blkid_ltrim_whitespace(unsigned char *str)
|
||||
{
|
||||
size_t len;
|
||||
unsigned char *p;
|
||||
|
||||
for (p = str; p && isspace(*p); p++);
|
||||
|
||||
len = strlen((char *) p);
|
||||
|
||||
if (len && p > str)
|
||||
memmove(str, p, len + 1);
|
||||
|
||||
return len;
|
||||
return ltrim_whitespace(str);
|
||||
}
|
||||
|
||||
/*
|
||||
* Some mkfs-like utils wipe some parts (usually begin) of the device.
|
||||
* For example LVM (pvcreate) or mkswap(8). This information could be used
|
||||
|
|
Loading…
Reference in New Issue