]> git.pld-linux.org Git - packages/busybox.git/blob - busybox-1.18.3-modutils24.patch
2b13787f38c0304553a26b3dc6cf4cb91bd5cf04
[packages/busybox.git] / busybox-1.18.3-modutils24.patch
1 --- busybox-1.18.3/modutils/modutils-24.c
2 +++ busybox-1.18.3-modutils24/modutils/modutils-24.c
3 @@ -2474,6 +2474,7 @@ new_process_module_arguments(struct obj_
4                 n = 0;
5                 p = val;
6                 while (*p != 0) {
7 +                       char sv_ch;
8                         char *endp;
9  
10                         if (++n > max)
11 @@ -2482,14 +2483,17 @@ new_process_module_arguments(struct obj_
12                         switch (*pinfo) {
13                         case 's':
14                                 len = strcspn(p, ",");
15 +                               sv_ch = p[len];
16                                 p[len] = 0;
17                                 obj_string_patch(f, sym->secidx,
18                                                  loc - contents, p);
19                                 loc += tgt_sizeof_char_p;
20                                 p += len;
21 +                               *p = sv_ch;
22                                 break;
23                         case 'c':
24                                 len = strcspn(p, ",");
25 +                               sv_ch = p[len];
26                                 p[len] = 0;
27                                 if (len >= charssize)
28                                         bb_error_msg_and_die("string too long for %s (max %ld)", param,
29 @@ -2497,6 +2501,7 @@ new_process_module_arguments(struct obj_
30                                 strcpy((char *) loc, p);
31                                 loc += charssize;
32                                 p += len;
33 +                               *p = sv_ch;
34                                 break;
35                         case 'b':
36                                 *loc++ = strtoul(p, &endp, 0);
This page took 0.474046 seconds and 2 git commands to generate.