* grub-core/disk/arc/arcdisk.c (reopen): Close old handle before
opening new one.
This commit is contained in:
parent
f767c929f2
commit
245f4aba48
2 changed files with 11 additions and 6 deletions
|
@ -1,3 +1,8 @@
|
||||||
|
2011-05-21 Vladimir Serbinenko <phcoder@gmail.com>
|
||||||
|
|
||||||
|
* grub-core/disk/arc/arcdisk.c (reopen): Close old handle before
|
||||||
|
opening new one.
|
||||||
|
|
||||||
2011-05-21 Colin Watson <cjwatson@ubuntu.com>
|
2011-05-21 Colin Watson <cjwatson@ubuntu.com>
|
||||||
2011-05-21 Vladimir Serbinenko <phcoder@gmail.com>
|
2011-05-21 Vladimir Serbinenko <phcoder@gmail.com>
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
/* ofdisk.c - Open Firmware disk access. */
|
/* ofdisk.c - Open Firmware disk access. */
|
||||||
/*
|
/*
|
||||||
* GRUB -- GRand Unified Bootloader
|
* GRUB -- GRand Unified Bootloader
|
||||||
* Copyright (C) 2004,2006,2007,2008,2009 Free Software Foundation, Inc.
|
* Copyright (C) 2004,2006,2007,2008,2009,2011 Free Software Foundation, Inc.
|
||||||
*
|
*
|
||||||
* GRUB is free software: you can redistribute it and/or modify
|
* GRUB is free software: you can redistribute it and/or modify
|
||||||
* it under the terms of the GNU General Public License as published by
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
@ -105,11 +105,6 @@ reopen (const char *name)
|
||||||
grub_dprintf ("arcdisk", "using already opened %s\n", name);
|
grub_dprintf ("arcdisk", "using already opened %s\n", name);
|
||||||
return GRUB_ERR_NONE;
|
return GRUB_ERR_NONE;
|
||||||
}
|
}
|
||||||
if (GRUB_ARC_FIRMWARE_VECTOR->open (name, 0, &handle))
|
|
||||||
{
|
|
||||||
grub_dprintf ("arcdisk", "couldn't open %s\n", name);
|
|
||||||
return grub_error (GRUB_ERR_IO, "couldn't open %s", name);
|
|
||||||
}
|
|
||||||
if (last_path)
|
if (last_path)
|
||||||
{
|
{
|
||||||
GRUB_ARC_FIRMWARE_VECTOR->close (last_handle);
|
GRUB_ARC_FIRMWARE_VECTOR->close (last_handle);
|
||||||
|
@ -117,6 +112,11 @@ reopen (const char *name)
|
||||||
last_path = NULL;
|
last_path = NULL;
|
||||||
last_handle = 0;
|
last_handle = 0;
|
||||||
}
|
}
|
||||||
|
if (GRUB_ARC_FIRMWARE_VECTOR->open (name, 0, &handle))
|
||||||
|
{
|
||||||
|
grub_dprintf ("arcdisk", "couldn't open %s\n", name);
|
||||||
|
return grub_error (GRUB_ERR_IO, "couldn't open %s", name);
|
||||||
|
}
|
||||||
last_path = grub_strdup (name);
|
last_path = grub_strdup (name);
|
||||||
if (!last_path)
|
if (!last_path)
|
||||||
return grub_errno;
|
return grub_errno;
|
||||||
|
|
Loading…
Add table
Reference in a new issue