Magellan Linux

Diff of /tags/grubby-8_40_20200707/grubby.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 3151 by niro, Tue Jul 7 11:25:03 2020 UTC revision 3154 by niro, Tue Jul 7 11:29:06 2020 UTC
# Line 3209  int grubGetBootFromDeviceMap(const char Line 3209  int grubGetBootFromDeviceMap(const char
3209    
3210  int suseGrubConfGetBoot(const char *path, char **bootPtr)  int suseGrubConfGetBoot(const char *path, char **bootPtr)
3211  {  {
3212   char *grubDevice;   char *grubDevice = NULL;
3213    
3214   if (suseGrubConfGetInstallDevice(path, &grubDevice))   if (suseGrubConfGetInstallDevice(path, &grubDevice))
3215   dbgPrintf("error looking for grub installation device\n");   dbgPrintf("error looking for grub installation device\n");
# Line 5220  int main(int argc, const char **argv) Line 5220  int main(int argc, const char **argv)
5220   int i = 0;   int i = 0;
5221   for (int j = 1; j < argc; j++)   for (int j = 1; j < argc; j++)
5222   i += strlen(argv[j]) + 1;   i += strlen(argv[j]) + 1;
  saved_command_line = malloc(i);  
  if (!saved_command_line) {  
  fprintf(stderr, "grubby: %m\n");  
  exit(1);  
  }  
  saved_command_line[0] = '\0';  
  int cmdline_len = 0, arg_len;  
  for (int j = 1; j < argc; j++) {  
  arg_len = strlen(argv[j]);  
  memcpy(saved_command_line + cmdline_len, argv[j], arg_len);  
  cmdline_len += arg_len;  
  if (j != argc - 1) {  
  memcpy(saved_command_line + cmdline_len, " ", 1);  
  cmdline_len++;  
  }  
5223    
5224     if (i > 0) {
5225     saved_command_line = malloc(i);
5226     if (!saved_command_line) {
5227     fprintf(stderr, "grubby: %m\n");
5228     exit(1);
5229     }
5230    
5231     saved_command_line[0] = '\0';
5232     int cmdline_len = 0, arg_len;
5233     for (int j = 1; j < argc; j++) {
5234     arg_len = strlen(argv[j]);
5235     memcpy(saved_command_line + cmdline_len, argv[j], arg_len);
5236     cmdline_len += arg_len;
5237     if (j != argc - 1) {
5238     memcpy(saved_command_line + cmdline_len, " ", 1);
5239     cmdline_len++;
5240     }
5241     }
5242     saved_command_line[cmdline_len] = '\0';
5243   }   }
  saved_command_line[cmdline_len] = '\0';  
5244    
5245   optCon = poptGetContext("grubby", argc, argv, options, 0);   optCon = poptGetContext("grubby", argc, argv, options, 0);
5246   poptReadDefaultConfig(optCon, 1);   poptReadDefaultConfig(optCon, 1);

Legend:
Removed from v.3151  
changed lines
  Added in v.3154