diff --git a/build/jam/HaikuImage b/build/jam/HaikuImage index 3f4698aabf..ef84bf4228 100644 --- a/build/jam/HaikuImage +++ b/build/jam/HaikuImage @@ -130,7 +130,7 @@ BEOS_ADD_ONS_PRINT = Canon\ LIPS3\ Compatible Canon\ LIPS4\ Compatible BEOS_ADD_ONS_PRINT_TRANSPORT = HP\ JetDirect IPP LPR Parallel\ Port Print\ To\ File Serial\ Port USB\ Port ; -BEOS_ADD_ONS_SCREENSAVERS = Haiku IFS Spider ; +BEOS_ADD_ONS_SCREENSAVERS = Haiku IFS Spider Welcome ; BEOS_ADD_ONS_DRIVERS_AUDIO = auich auvia echo3g emuxki ; #hda BEOS_ADD_ONS_DRIVERS_AUDIO_OLD = ; #cmedia sis7018 usb_audio ; BEOS_ADD_ONS_DRIVERS_GRAPHICS = $(X86_ONLY)radeon $(X86_ONLY)nvidia diff --git a/src/add-ons/screen_savers/message/Message.cpp b/src/add-ons/screen_savers/message/Message.cpp index 4f28e02ee8..a4e03070f7 100644 --- a/src/add-ons/screen_savers/message/Message.cpp +++ b/src/add-ons/screen_savers/message/Message.cpp @@ -21,17 +21,14 @@ #include #include - // Double brackets to satisfy a compiler warning const pattern kCheckered = { { 0xcc, 0xcc, 0x33, 0x33, 0xcc, 0xcc, 0x33, 0x33 } }; - // Get a clever message from fortune BString *get_message() { BString *result = new BString(); - system("fortune > /tmp/fortune_msg"); - FILE *file = fopen("/tmp/fortune_msg", "r"); + FILE *file = popen("/bin/fortune", "r"); if (file) { char buf[512]; int bytesRead; @@ -41,7 +38,6 @@ BString *get_message() } fclose(file); } - remove("/tmp/fortune_msg"); // Just in case if (result->Length() <= 0) { diff --git a/src/kits/screensaver/ScreenSaverRunner.cpp b/src/kits/screensaver/ScreenSaverRunner.cpp index e57632a9ab..249f8fc5f5 100644 --- a/src/kits/screensaver/ScreenSaverRunner.cpp +++ b/src/kits/screensaver/ScreenSaverRunner.cpp @@ -183,7 +183,7 @@ ScreenSaverRunner::_Run() int32 snoozeCount = 0; int32 frame = 0; - bigtime_t lastTickTime = system_time(); + bigtime_t lastTickTime = -1; bigtime_t tick = fSaver ? fSaver->TickSize() : kTickBase; while (!fQuitting) { @@ -193,7 +193,7 @@ ScreenSaverRunner::_Run() // will result in the screen saver not responding to deactivation // for that length of time snooze(kTickBase); - if (system_time() - lastTickTime < tick) + if (lastTickTime > 0 && system_time() - lastTickTime < tick) continue; else { // re-evaluate the tick time after each successful wakeup -