summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDominik Riebeling <Dominik.Riebeling@gmail.com>2010-02-11 22:19:34 +0000
committerDominik Riebeling <Dominik.Riebeling@gmail.com>2010-02-11 22:19:34 +0000
commit22056a9c37a599f5970ec1faccf77a8d295020cb (patch)
tree5ced57052624cf9f0a0b29e5679b685f63ad78ff
parentd868bfe521fea5f0003cf6cfc7a0b7a20f835250 (diff)
downloadrockbox-22056a9c37a599f5970ec1faccf77a8d295020cb.tar.gz
rockbox-22056a9c37a599f5970ec1faccf77a8d295020cb.zip
Don't close the disk handle to the ipod too early.
ipodInitialize() is not supposed to close but only to open the disk handle. Fixes a segfault when trying to install the ipod bootloader on windows. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24608 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--rbutil/rbutilqt/base/bootloaderinstallipod.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/rbutil/rbutilqt/base/bootloaderinstallipod.cpp b/rbutil/rbutilqt/base/bootloaderinstallipod.cpp
index 48b35f930f..e1d9f1324f 100644
--- a/rbutil/rbutilqt/base/bootloaderinstallipod.cpp
+++ b/rbutil/rbutilqt/base/bootloaderinstallipod.cpp
@@ -220,6 +220,9 @@ BootloaderInstallBase::Capabilities BootloaderInstallIpod::capabilities(void)
220} 220}
221 221
222 222
223/** @initialize Ipod by opening its file handle and checking if its an ipod.
224 * Note: the caller has to make sure the file handle gets closed!
225 */
223bool BootloaderInstallIpod::ipodInitialize(struct ipod_t *ipod) 226bool BootloaderInstallIpod::ipodInitialize(struct ipod_t *ipod)
224{ 227{
225 if(!m_blfile.isEmpty()) { 228 if(!m_blfile.isEmpty()) {
@@ -264,7 +267,6 @@ bool BootloaderInstallIpod::ipodInitialize(struct ipod_t *ipod)
264 return false; 267 return false;
265 } 268 }
266 read_directory(ipod); 269 read_directory(ipod);
267 ipod_close(ipod);
268 return true; 270 return true;
269} 271}
270 272