save a bit of code with *strchrnul = '\0' trick

function                                             old     new   delta
nextline                                              59      55      -4
include_conf                                         902     898      -4
read_config                                          414     406      -8
fsck_main                                           1880    1869     -11
This commit is contained in:
Denis Vlasenko 2007-12-26 20:56:55 +00:00
parent abee3d0e0d
commit c03e872112
5 changed files with 8 additions and 19 deletions

View File

@ -349,9 +349,7 @@ static int parse_fstab_line(char *line, struct fs_info **ret_fs)
*ret_fs = 0;
strip_line(line);
cp = strchr(line, '#');
if (cp)
*cp = '\0'; /* Ignore everything after the comment char */
*strchrnul(line, '#') = '\0'; /* Ignore everything after comment */
cp = line;
device = parse_word(&cp);

View File

@ -242,11 +242,8 @@ static void include_conf(struct dep_t **first, struct dep_t **current, char *buf
while (reads(fd, buffer, buflen)) {
int l;
char *p;
p = strchr(buffer, '#');
if (p)
*p = '\0';
*strchrnul(buffer, '#') = '\0';
l = strlen(buffer);

View File

@ -554,13 +554,9 @@ static void setup(servtab_t *sep)
static char *nextline(void)
{
char *cp;
if (fgets(line, LINE_SIZE, fconfig) == NULL)
return NULL;
cp = strchr(line, '\n');
if (cp)
*cp = '\0';
*strchrnul(line, '\n') = '\0';
return line;
}

View File

@ -332,14 +332,12 @@ int read_config(const char *file)
while (fgets(buffer, READ_CONFIG_BUF_SIZE, in)) {
char debug_orig[READ_CONFIG_BUF_SIZE];
char *p;
lm++;
p = strchr(buffer, '\n');
if (p) *p = '\0';
if (ENABLE_FEATURE_UDHCP_DEBUG) strcpy(debug_orig, buffer);
p = strchr(buffer, '#');
if (p) *p = '\0';
*strchrnul(buffer, '\n') = '\0';
if (ENABLE_FEATURE_UDHCP_DEBUG)
strcpy(debug_orig, buffer);
*strchrnul(buffer, '#') = '\0';
token = strtok(buffer, " \t");
if (!token) continue;

View File

@ -1448,7 +1448,7 @@ static int singlemount(struct mntent *mp, int ignore_busy)
// Might this be a virtual filesystem?
if (ENABLE_FEATURE_MOUNT_HELPERS
&& (strchr(mp->mnt_fsname,'#'))
&& (strchr(mp->mnt_fsname, '#'))
) {
char *s, *p, *args[35];
int n = 0;