summaryrefslogtreecommitdiffstats
path: root/opensuse/core/tdebase/kdm-cope-with-new-grub.diff
diff options
context:
space:
mode:
Diffstat (limited to 'opensuse/core/tdebase/kdm-cope-with-new-grub.diff')
-rw-r--r--opensuse/core/tdebase/kdm-cope-with-new-grub.diff27
1 files changed, 27 insertions, 0 deletions
diff --git a/opensuse/core/tdebase/kdm-cope-with-new-grub.diff b/opensuse/core/tdebase/kdm-cope-with-new-grub.diff
new file mode 100644
index 000000000..cf28cf9be
--- /dev/null
+++ b/opensuse/core/tdebase/kdm-cope-with-new-grub.diff
@@ -0,0 +1,27 @@
+Index: kdm/backend/bootman.c
+===================================================================
+--- kdm/backend/bootman.c.orig
++++ kdm/backend/bootman.c
+@@ -132,19 +132,14 @@ setGrub( const char *opt, SdRec *sdr )
+ static void
+ commitGrub( void )
+ {
+- FILE *f;
+- int pid;
+- static const char *args[] = { 0, "--batch", "--no-floppy", 0 };
++ char buffer[PATH_MAX];
+
+ if (sdRec.bmstamp != mTime( GRUB_MENU ) &&
+ setGrub( sdRec.osname, &sdRec ) != BO_OK)
+ return;
+
+- args[0] = grub;
+- if ((f = pOpen( (char **)args, 'w', &pid ))) {
+- fprintf( f, "savedefault --default=%d --once\n", sdRec.osindex );
+- pClose( f, pid );
+- }
++ snprintf(buffer, PATH_MAX, "/usr/sbin/grubonce %d", sdRec.osindex);
++ system(buffer);
+ }
+
+ static char *lilo;