* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_get_grub_dev):
Fix a memory leak. (grub_util_biosdisk_get_grub_dev): Add a useful debug info.
This commit is contained in:
parent
91ee7b6d73
commit
d89ee4141a
2 changed files with 15 additions and 3 deletions
|
@ -1,3 +1,9 @@
|
||||||
|
2011-11-12 Vladimir Serbinenko <phcoder@gmail.com>
|
||||||
|
|
||||||
|
* grub-core/kern/emu/hostdisk.c (grub_util_biosdisk_get_grub_dev):
|
||||||
|
Fix a memory leak.
|
||||||
|
(grub_util_biosdisk_get_grub_dev): Add a useful debug info.
|
||||||
|
|
||||||
2011-11-12 Vladimir Serbinenko <phcoder@gmail.com>
|
2011-11-12 Vladimir Serbinenko <phcoder@gmail.com>
|
||||||
|
|
||||||
* grub-core/kern/emu/hostdisk.c (find_system_device): Fix a memory leak.
|
* grub-core/kern/emu/hostdisk.c (find_system_device): Fix a memory leak.
|
||||||
|
|
|
@ -1781,6 +1781,7 @@ grub_util_biosdisk_get_grub_dev (const char *os_dev)
|
||||||
{
|
{
|
||||||
struct stat st;
|
struct stat st;
|
||||||
int drive;
|
int drive;
|
||||||
|
char *sys_disk;
|
||||||
|
|
||||||
grub_util_info ("Looking for %s", os_dev);
|
grub_util_info ("Looking for %s", os_dev);
|
||||||
|
|
||||||
|
@ -1800,9 +1801,13 @@ grub_util_biosdisk_get_grub_dev (const char *os_dev)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (grub_strcmp (os_dev,
|
sys_disk = convert_system_partition_to_system_disk (os_dev, &st);
|
||||||
convert_system_partition_to_system_disk (os_dev, &st)) == 0)
|
if (grub_strcmp (os_dev, sys_disk) == 0)
|
||||||
|
{
|
||||||
|
free (sys_disk);
|
||||||
return make_device_name (drive, -1, -1);
|
return make_device_name (drive, -1, -1);
|
||||||
|
}
|
||||||
|
free (sys_disk);
|
||||||
|
|
||||||
#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__APPLE__) || defined(__NetBSD__) || defined (__sun__)
|
#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__APPLE__) || defined(__NetBSD__) || defined (__sun__)
|
||||||
if (! S_ISCHR (st.st_mode))
|
if (! S_ISCHR (st.st_mode))
|
||||||
|
@ -1914,6 +1919,7 @@ grub_util_biosdisk_get_grub_dev (const char *os_dev)
|
||||||
if (partname == NULL)
|
if (partname == NULL)
|
||||||
{
|
{
|
||||||
grub_disk_close (disk);
|
grub_disk_close (disk);
|
||||||
|
grub_util_info ("cannot find the partition of `%s'", os_dev);
|
||||||
grub_error (GRUB_ERR_BAD_DEVICE,
|
grub_error (GRUB_ERR_BAD_DEVICE,
|
||||||
"cannot find the partition of `%s'", os_dev);
|
"cannot find the partition of `%s'", os_dev);
|
||||||
return 0;
|
return 0;
|
||||||
|
|
Loading…
Reference in a new issue