diff options
author | Denis Vlasenko <vda.linux@googlemail.com> | 2007-06-30 08:04:05 +0000 |
---|---|---|
committer | Denis Vlasenko <vda.linux@googlemail.com> | 2007-06-30 08:04:05 +0000 |
commit | dc757aa16ce53d9784fa3953b0c3762dfa8ccda9 (patch) | |
tree | 2eee7a83dcbd38fcfbcdbec8b5d52f4baff3326f /modutils/modprobe.c | |
parent | f7d07b1723c15ee818f0c1f5cce96c55274024a6 (diff) | |
download | busybox-w32-dc757aa16ce53d9784fa3953b0c3762dfa8ccda9.tar.gz busybox-w32-dc757aa16ce53d9784fa3953b0c3762dfa8ccda9.tar.bz2 busybox-w32-dc757aa16ce53d9784fa3953b0c3762dfa8ccda9.zip |
introduce and use bb_basename()
function old new delta
bb_basename - 26 +26
sv_main 1226 1225 -1
passwd_main 1985 1983 -2
showdirs 482 478 -4
sendCgi 1811 1807 -4
make_device 1354 1350 -4
handleIncoming 2443 2439 -4
func_name 82 78 -4
service_name 2292 2285 -7
main 909 901 -8
cmp_main 555 547 -8
test_main 434 422 -12
act 228 216 -12
find_pair 180 164 -16
rmmod_main 298 280 -18
find_pid_by_name 156 134 -22
modprobe_main 1606 1576 -30
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 0/16 up/down: 26/-156) Total: -130 bytes
text data bss dec hex filename
734933 3028 14400 752361 b7ae9 busybox_old
734801 3028 14400 752229 b7a65 busybox_unstripped
Diffstat (limited to 'modutils/modprobe.c')
-rw-r--r-- | modutils/modprobe.c | 21 |
1 files changed, 6 insertions, 15 deletions
diff --git a/modutils/modprobe.c b/modutils/modprobe.c index dbed4ea0f..3861dd1e3 100644 --- a/modutils/modprobe.c +++ b/modutils/modprobe.c | |||
@@ -376,18 +376,13 @@ static struct dep_t *build_dep(void) | |||
376 | 376 | ||
377 | if (col) { | 377 | if (col) { |
378 | /* This line is a dep description */ | 378 | /* This line is a dep description */ |
379 | char *mods; | 379 | const char *mods; |
380 | char *modpath; | 380 | char *modpath; |
381 | char *mod; | 381 | char *mod; |
382 | 382 | ||
383 | /* Find the beginning of the module file name */ | 383 | /* Find the beginning of the module file name */ |
384 | *col = 0; | 384 | *col = 0; |
385 | mods = strrchr(buffer, '/'); | 385 | mods = bb_basename(buffer); |
386 | |||
387 | if (!mods) | ||
388 | mods = buffer; /* no path for this module */ | ||
389 | else | ||
390 | mods++; /* there was a path for this module... */ | ||
391 | 386 | ||
392 | /* find the path of the module */ | 387 | /* find the path of the module */ |
393 | modpath = strchr(buffer, '/'); /* ... and this is the path */ | 388 | modpath = strchr(buffer, '/'); /* ... and this is the path */ |
@@ -433,7 +428,7 @@ static struct dep_t *build_dep(void) | |||
433 | /* p points to the first dependable module; if NULL, no dependable module */ | 428 | /* p points to the first dependable module; if NULL, no dependable module */ |
434 | if (p && *p) { | 429 | if (p && *p) { |
435 | char *end = &buffer[l-1]; | 430 | char *end = &buffer[l-1]; |
436 | char *deps; | 431 | const char *deps; |
437 | char *dep; | 432 | char *dep; |
438 | char *next; | 433 | char *next; |
439 | int ext = 0; | 434 | int ext = 0; |
@@ -451,15 +446,11 @@ static struct dep_t *build_dep(void) | |||
451 | next = end; | 446 | next = end; |
452 | 447 | ||
453 | /* find the beginning of the module file name */ | 448 | /* find the beginning of the module file name */ |
454 | deps = strrchr(p, '/'); | 449 | deps = bb_basename(p); |
455 | 450 | if (deps == p) { | |
456 | if (!deps || (deps < p)) { | ||
457 | deps = p; | ||
458 | |||
459 | while (isblank(*deps)) | 451 | while (isblank(*deps)) |
460 | deps++; | 452 | deps++; |
461 | } else | 453 | } |
462 | deps++; | ||
463 | 454 | ||
464 | /* find the end of the module name in the file name */ | 455 | /* find the end of the module name in the file name */ |
465 | if (ENABLE_FEATURE_2_6_MODULES | 456 | if (ENABLE_FEATURE_2_6_MODULES |