diff options
Diffstat (limited to 'rbutil/rbutilqt/base/bootloaderinstallsansa.cpp')
-rw-r--r-- | rbutil/rbutilqt/base/bootloaderinstallsansa.cpp | 26 |
1 files changed, 23 insertions, 3 deletions
diff --git a/rbutil/rbutilqt/base/bootloaderinstallsansa.cpp b/rbutil/rbutilqt/base/bootloaderinstallsansa.cpp index e57a7f9c24..48bd0053ee 100644 --- a/rbutil/rbutilqt/base/bootloaderinstallsansa.cpp +++ b/rbutil/rbutilqt/base/bootloaderinstallsansa.cpp @@ -134,10 +134,14 @@ void BootloaderInstallSansa::installStage2(void) if(sansa_add_bootloader(&sansa, blfile.toLatin1().data(), FILETYPE_MI4) == 0) { emit logItem(tr("Successfully installed bootloader"), LOGOK); - logInstall(LogAdd); - emit done(false); sansa_close(&sansa); - return; +#if defined(Q_OS_MACX) + m_remountDevice = sansa.diskname; + connect(this, SIGNAL(remounted(bool)), this, SLOT(installStage3(bool))); + waitRemount(); +#else + installStage3(true); +#endif } else { emit logItem(tr("Failed to install bootloader"), LOGERROR); @@ -149,6 +153,22 @@ void BootloaderInstallSansa::installStage2(void) } +void BootloaderInstallSansa::installStage3(bool mounted) +{ + if(mounted) { + logInstall(LogAdd); + emit logItem(tr("Bootloader Installation complete."), LOGINFO); + emit done(false); + return; + } + else { + emit logItem(tr("Writing log aborted"), LOGERROR); + emit done(true); + } + qDebug() << "version installed:" << m_blversion.toString(Qt::ISODate); +} + + /** Uninstall the bootloader. */ bool BootloaderInstallSansa::uninstall(void) |