Robert Millan wrote:
On Tue, Dec 29, 2009 at 02:31:46AM +0100, Grégoire Sutre wrote:
+#if defined(__NetBSD__)
+ /* Convert this block device to its character (raw) device */
+ res = xmalloc (strlen (cwd) + strlen (ent->d_name) + 3);
+ sprintf (res, "%s/r%s", cwd, ent->d_name);
+#else
res = xmalloc (strlen (cwd) + strlen (ent->d_name) + 2);
sprintf (res, "%s/%s", cwd, ent->d_name);
+#endif
Can you avoid code duplication here? Something like:
#ifdef __NetBSD__
const char *template = "%s/r%s";
#else
const char *template = "%s/%s";
#endif
Indeed, it's better. But we also need a variable for the extra length
(3 for NetBSD and 2 otherwise). I have updated the patch.
http://pkgsrc-wip.cvs.sourceforge.net/viewvc/*checkout*/pkgsrc-wip/wip/grub2-current/patches/patch-grub-probe-netbsd
The patch is not finished yet: as discussed on IRC, I'll try to
factorize Linux and NetBSD code in grub_util_biosdisk_get_grub_dev, and
to fix the floppy problem.
Grégoire
_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/grub-devel