From: Vladimir 'phcoder' Serbinenko Date: Sun, 26 Feb 2012 21:49:24 +0000 (+0100) Subject: Remove prio_list. X-Git-Tag: 2.00~550 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=eece3349ead259b440a36c3456b05fda56e82e7f;p=thirdparty%2Fgrub.git Remove prio_list. * include/grub/list.h (grub_prio_list): Removed. (GRUB_PRIO_LIST_PRIO_MASK): Removed. All users switched to GRUB_COMMAND_PRIO_MASK. (GRUB_PRIO_LIST_FLAG_ACTIVE): Removed. All users switched to GRUB_COMMAND_FLAG_ACTIVE. (grub_prio_list_insert): Removed. (grub_prio_list_remove): Likewise. (GRUB_AS_PRIO_LIST): Likewise. (GRUB_AS_PRIO_LIST_P): Likewise. * include/grub/command.h (GRUB_COMMAND_PRIO_MASK): New define. (GRUB_COMMAND_FLAG_ACTIVE): Likewise. * grub-core/kern/list.c (grub_prio_list_insert): Remove. * grub-core/kern/command.c (grub_register_command_prio): Inline the prio_list code. (grub_unregister_command): Likewise. --- eece3349ead259b440a36c3456b05fda56e82e7f diff --cc ChangeLog index e50bef916,f884f2be1..b441ad83c --- a/ChangeLog +++ b/ChangeLog @@@ -1,559 -1,3 +1,579 @@@ ++2012-02-26 Vladimir Serbinenko ++ ++ Remove prio_list. ++ ++ * include/grub/list.h (grub_prio_list): Removed. ++ (GRUB_PRIO_LIST_PRIO_MASK): Removed. All users switched to ++ GRUB_COMMAND_PRIO_MASK. ++ (GRUB_PRIO_LIST_FLAG_ACTIVE): Removed. All users switched to ++ GRUB_COMMAND_FLAG_ACTIVE. ++ (grub_prio_list_insert): Removed. ++ (grub_prio_list_remove): Likewise. ++ (GRUB_AS_PRIO_LIST): Likewise. ++ (GRUB_AS_PRIO_LIST_P): Likewise. ++ * include/grub/command.h (GRUB_COMMAND_PRIO_MASK): New define. ++ (GRUB_COMMAND_FLAG_ACTIVE): Likewise. ++ * grub-core/kern/list.c (grub_prio_list_insert): Remove. ++ * grub-core/kern/command.c (grub_register_command_prio): Inline ++ the prio_list code. ++ (grub_unregister_command): Likewise. ++ +2012-02-26 Vladimir Serbinenko + + Fix interrupt mixup from previous commit. + + * include/grub/i386/pc/int.h (grub_i386_idt): New struct. + (grub_realidt): New var. + * grub-core/lib/i386/relocator16.S (grub_relocator16_idt): New variable + Load idt. + * grub-core/lib/i386/relocator.c (grub_relocator16_idt): + New declaration. + (grub_relocator16_boot): Set grub_relocator16_idt. + * grub-core/kern/i386/realmode.S (realidt): Renamed to ... + (LOCAL(realidt)): ... this. + * grub-core/boot/i386/pc/startup_raw.S: Pass pointer to realidt in eax. + * grub-core/kern/i386/pc/startup.S: Save pointer to realidt. + (grub_realidt): New variable. + +2012-02-26 Vladimir Serbinenko + + * grub-core/lib/i386/backtrace.c (grub_cmd_backtrace): Move from ... + * grub-core/lib/backtrace.c (grub_cmd_backtrace): ... to here. + * grub-core/lib/i386/backtrace.c (GRUB_MOD_INIT): Move from ... + * grub-core/lib/backtrace.c (GRUB_MOD_INIT): ... to here. + Gettextize. + * grub-core/lib/i386/backtrace.c (GRUB_MOD_FINI): Move from ... + * grub-core/lib/backtrace.c (GRUB_MOD_FINI): ... to here. + * po/POTFILES.in: Regenerate. + +2012-02-26 Vladimir Serbinenko + + * grub-core/commands/probe.c (grub_cmd_probe): Gettextise UUID and label + errors. + +2012-02-26 Vladimir Serbinenko + + * grub-core/gnulib/argp-fmtstream.c (__argp_get_display_len): Stop on + \0. + (add_length): Likewise. + +2012-02-26 Vladimir Serbinenko +2012-02-26 Lubomir Kundrak + + GDB serial and backtrace support. + + * grub-core/kern/i386/realmode.S (real_to_prot): Reload IDT. + (prot_to_real): Likewise. + * grub-core/kern/i386/int.S (grub_bios_interrupt): Remove IDT reload. + * grub-core/Makefile.core.def (backtrace): New module. + (gdb): Likewise. + * grub-core/gdb/cstub.c: New file. + * grub-core/gdb/gdb.c: Likewise. + * grub-core/gdb/i386/idt.c: Likewise. + * grub-core/gdb/i386/machdep.S: Likewise. + * grub-core/gdb/i386/signal.c: Likewise. + * grub-core/lib/i386/backtrace.c: Likewise. + * grub-core/lib/backtrace.c: Likewise. + * include/grub/backtrace.h: Likewise. + * include/grub/gdb.h: Likewise. + * include/grub/i386/gdb.h: Likewise. + +2012-02-26 Vladimir Serbinenko + + * grub-core/gnulib/argp-fmtstream.c (__argp_get_display_len): + New function. + (add_length): Likewise. + (__argp_fmtstream_update): Handle strings with non-ASCII chars. + * grub-core/gnulib/argp-fmtstream.h (__argp_get_display_len): New + proto. + * grub-core/gnulib/argp-help.c (argp_args_usage): Use + __argp_get_display_len. + +2012-02-26 Vladimir Serbinenko + + $"..." support in scripts. + + * grub-core/script/execute.c (grub_script_arglist_to_argv): Handle + GRUB_SCRIPT_ARG_TYPE_GETTEXT. + * grub-core/script/yylex.l: Likewise. + * include/grub/script_sh.h (GRUB_SCRIPT_ARG_TYPE_GETTEXT): New enum + value. + +2012-02-26 Vladimir Serbinenko + + * gentpl.py: Remove obsolete pkglib_DATA handling. + +2012-02-26 Vladimir Serbinenko + + Don't transform PACKAGE_TARNAME following a discussion on autoconf + mailing list. + + * util/grub-install.in: Don't transform PACKAGE_TARNAME. + * util/grub-kbdcomp.in: Likewise. + * util/grub-mkconfig.in: Likewise. + * util/grub-mkconfig_lib.in: Likewise. + * util/grub-mknetdir.in: Likewise. + * util/grub-mkrescue.in: Likewise. + * util/grub-mkstandalone.in: Likewise. + * util/grub-reboot.in: Likewise. + * util/grub-set-default.in: Likewise. + * util/powerpc/ieee1275/grub-mkrescue.in: Likewise. + +2012-02-26 Vladimir Serbinenko + + Remove GRUB_PREFIX. + + * util/grub-mkconfig.in: Remove GRUB_PREFIX. + * util/grub.d/00_header.in: Compute prefix in the only place it's still + used for backward compatibility. + +2012-02-26 Vladimir Serbinenko + + Add new all_video module. + + * grub-core/Makefile.am (moddep.lst): Make dependent on video.lst. + * grub-core/Makefile.core.def (all_video): New module. + * grub-core/genmoddep.awk: Generate dependency of all_video from + video.lst. + * grub-core/lib/fake_module.c: New file. + * grub-core/normal/main.c (features): Add feature_all_video_module. + * util/grub.d/00_header.in: Define locale_dir based on $prefix and + don't do explicit search again. + insmod all_video in load_video if available. + +2012-02-26 Vladimir Serbinenko + + Another round of string clarification and adding TRANSLATORS comments. + +2012-02-26 Vladimir Serbinenko + + * util/grub-mknetdir.in: Remove erroneous reference to install_device. + +2012-02-26 Vladimir Serbinenko + + * grub-core/normal/charset.c (grub_utf8_to_ucs4_alloc): Fix return type + to grub_ssize_t. + * grub-core/normal/main.c (grub_normal_init_page): Fix msg_len type. + * include/grub/charset.h (grub_utf8_to_ucs4_alloc): Fix prototype. + +2012-02-26 Vladimir Serbinenko + + * grub-core/normal/menu_text.c (grub_print_message_indented_real): Add + trailing newline implicitly. All users updated. + +2012-02-26 Vladimir Serbinenko + + Implement serial on IEEE1275 and EFI. + + * docs/grub.texi (Platform-specific limitations): Fix the columen video + on emu. Mention arc and emu as the only platforms without serial + support. + * grub-core/Makefile.core.def (serial): Enable on all terminfomodule and + ieee1275 platforms. + * grub-core/term/efi/serial.c: New file. + * grub-core/term/ieee1275/serial.c: Likewise. + * grub-core/term/serial.c (grub_serial_find): Disable direct port + specification if no ns8250 driver is available. + (grub_cmd_serial): Likewise. + (GRUB_MOD_INIT) [GRUB_MACHINE_IEEE1275]: Init ofserial. + (GRUB_MOD_INIT) [GRUB_MACHINE_EFI]: Init efiserial. + * include/grub/efi/api.h (GRUB_EFI_SERIAL_IO_GUID): New define. + (grub_efi_parity_type_t): New type. + (grub_efi_stop_bits_t): Likewise. + (grub_efi_serial_io_interface): New struct. + * include/grub/serial.h (grub_serial_port): Make 'broken' field + available for all interfaces. + Add EFI and IEEE1275 fields. + (grub_ofserial_init): New proto. + (grub_efiserial_init): Likeiwse. + * util/grub.d/00_header.in: Don't check for the presence of serial + module. + +2012-02-26 Vladimir Serbinenko + + * grub-core/disk/ieee1275/ofdisk.c (scan): Fix improper use of device + name as if it was an alias. + +2012-02-25 Vladimir Serbinenko + + * grub-core/commands/lsacpi.c (options): Fix typo. + +2012-02-25 Vladimir Serbinenko + + Convert grub-emu to argp. + + * grub-core/Makefile.core.def (kernel): Add kern/emu/argp_common.c on + emu. + * util/argp_common.c: Rename to ... + * grub-core/kern/emu/argp_common.c: ... this. All users updated. + Add missing includes. + * grub-core/kern/emu/main.c: Convert to argp. + * po/POTFILES.in: Regenerate. + * util/grub-install.in (usage): Make first letter lowcase in messages + for uniformity. + * util/grub-setup.c (options): Likewise. + +2012-02-24 Vladimir Serbinenko + + * grub-core/gfxmenu/gui_progress_bar.c (progress_bar_set_property): + Put back accidently commented-out code. + +2012-02-24 Vladimir Serbinenko + + * grub-core/fs/hfsplus.c (grub_hfsplus_btree_iterate_node): Add btree + loop check using Brent algorithm. + (grub_hfsplus_btree_search): Likewise. + +2012-02-24 Vladimir Serbinenko + + * util/grub-install.in: Fix usage of wrong device for PreP install. + +2012-02-24 Vladimir Serbinenko + + * conf/Makefile.common (CFLAGS_GNULIB): Add + -Wno-unsafe-loop-optimizations. + * configure.ac: Remove -Wmissing-declarations and -Wmissing-prototypes + on tools. + * grub-core/commands/legacycfg.c: Add pragma to skip + -Wunsafe-loop-optimizations. + (check_password_md5_real): Fix loop counter type. + * grub-core/commands/testload.c (grub_cmd_testload): Fix over the EOF + reading. + * grub-core/disk/ldm.c (grub_util_get_ldm): Fix logic error. + * grub-core/fs/zfs/zfs_sha256.c (zio_checksum_SHA256): Add safety + loop condition. + * grub-core/io/gzio.c: Add pragma to skip -Wunsafe-loop-optimizations. + * grub-core/lib/LzmaEnc.c (GetOptimum): Avoid possible infinite loop. + * grub-core/net/net.c (grub_net_route_address): Add safety loop + condition. + * grub-core/normal/charset.c (bidi_line_wrap): Likewise. + * grub-core/normal/cmdline.c (grub_set_history): Fix loop types and + avoid possible infinite loops. + * grub-core/script/parser.y: Add pragma to skip -Wmissing-declarations + and -Wunsafe-loop-optimizations. + * grub-core/script/yylex.l: Likewise. + * util/grub-mkfont.c: Add pragma to skip -Wunsafe-loop-optimizations. + (print_glyphs): Avoid infinite loops. + * util/grub-mkimage.c (compress_kernel_xz): Fix format security. + +2012-02-24 Grégoire Sutre + + * grub-core/commands/lsacpi.c (disp_acpi_xsdt_table): Fix loop condition + to avoid infinite loop. + (disp_acpi_rsdt_table): Likewise. + +2012-02-24 Vladimir Serbinenko + + * grub-core/font/font.c (grub_font_load): Add support for default + path for fonts ($prefix/fonts). + * grub-core/kern/corecmd.c (grub_core_cmd_insmod): Unify condition + for checking if string is a path. + * grub-core/normal/main.c (features): Add feature_default_font_path. + * util/grub-mkconfig.in: Skip mangling of GRUB_FONT into GRUB_FONT_PATH. + * util/grub.d/00_header.in: Use default directory if possible. + * util/grub-install.in: Install unicode.pf2. + +2012-02-24 Vladimir Serbinenko + + * po/README: Add de_CH and en@quot to po/LINGUAS generation command. + * po/Rules-swiss: New file. + * po/swiss.sed: Likewise. + +2012-02-23 Vladimir Serbinenko + + * grub-core/fs/btrfs.c (find_device): Fix typos. + * grub-core/fs/zfs/zfs.c (read_device): Likewise. + * util/grub-mkrelpath.c (argp_parser): Likewise. + Reported by: Yuri Chornoivan. + +2012-02-23 Dalet Omega + + * grub-core/gfxmenu/gui_label.c (label_set_property): Add template + for usual informative messages. + +2012-02-23 Dalet Omega + + Starfield theme. + + * Makefile.am: Define starfield_DATA and dejavu.pf2 generation. + * conf/Makefile.common: Define starfielddir. + * configure.ac: Configure starfield. + * themes/starfield/COPYING.CC-BY-SA-3.0: New file. + * themes/starfield/README: Likewise. + * themes/starfield/blob_w.png: Likewise. + * themes/starfield/boot_menu_c.png: Likewise. + * themes/starfield/boot_menu_e.png: Likewise. + * themes/starfield/boot_menu_n.png: Likewise. + * themes/starfield/boot_menu_ne.png: Likewise. + * themes/starfield/boot_menu_nw.png: Likewise. + * themes/starfield/boot_menu_s.png: Likewise. + * themes/starfield/boot_menu_se.png: Likewise. + * themes/starfield/boot_menu_sw.png: Likewise. + * themes/starfield/boot_menu_w.png: Likewise. + * themes/starfield/slider_c.png: Likewise. + * themes/starfield/slider_n.png: Likewise. + * themes/starfield/slider_s.png: Likewise. + * themes/starfield/src/blob_nw.xcf: Likewise. + * themes/starfield/src/bootmenu/: Likewise. + * themes/starfield/src/bootmenu/center.xcf: Likewise. + * themes/starfield/src/bootmenu/corner.xcf: Likewise. + * themes/starfield/src/bootmenu/side.xcf: Likewise. + * themes/starfield/src/slider_c.xcf: Likewise. + * themes/starfield/src/slider_n.xcf: Likewise. + * themes/starfield/src/slider_s.xcf: Likewise. + * themes/starfield/src/terminalbox/: Likewise. + * themes/starfield/src/terminalbox/center.xcf: Likewise. + * themes/starfield/src/terminalbox/corner.xcf: Likewise. + * themes/starfield/src/terminalbox/side.xcf: Likewise. + * themes/starfield/starfield.png: Likewise. + * themes/starfield/terminal_box_c.png: Likewise. + * themes/starfield/terminal_box_e.png: Likewise. + * themes/starfield/terminal_box_n.png: Likewise. + * themes/starfield/terminal_box_ne.png: Likewise. + * themes/starfield/terminal_box_nw.png: Likewise. + * themes/starfield/terminal_box_s.png: Likewise. + * themes/starfield/terminal_box_se.png: Likewise. + * themes/starfield/terminal_box_sw.png: Likewise. + * themes/starfield/terminal_box_w.png: Likewise. + * themes/starfield/theme.txt: Likewise. + +2012-02-23 Vladimir Serbinenko + + * util/grub.d/00_header.in: Add missing export theme. + +2012-02-22 Vladimir Serbinenko + + * util/ieee1275/ofpath.c: Remove include of malloc.h since stdlib is + already included. + Reported by: Eren D. + +2012-02-22 Vladimir Serbinenko + + * conf/Makefile.common (grubdatadir): Removed. + (Makefile.am): Move eveything grubdata to pkgdata. + +2012-02-22 Vladimir Serbinenko + + * grub-core/commands/acpihalt.c (get_sleep_type): + Remove unused variable. + +2012-02-22 Vladimir Serbinenko + + * include/grub/acpi.h (GRUB_ASCII_OPCODE): Add + GRUB_ACPI_OPCODE_STRING_CONST, GRUB_ACPI_OPCODE_BUFFER, + GRUB_ACPI_OPCODE_CREATE_WORD_FIELD + and GRUB_ACPI_OPCODE_CREATE_BYTE_FIELD. + * grub-core/commands/acpihalt.c [GRUB_DSDT_TEST]: Replace include of + i18n with gettext no-op. + (skip_data_ref_object): Support GRUB_ACPI_OPCODE_BUFFER and + GRUB_ACPI_OPCODE_STRING_CONST. + (get_sleep_type): Support GRUB_ACPI_OPCODE_CREATE_WORD_FIELD and + GRUB_ACPI_OPCODE_CREATE_BYTE_FIELD. Add handling of unknown opcodes. + +2012-02-22 Vladimir Serbinenko + + * po/POTFILES.in: Regenerate. + +2012-02-22 Vladimir Serbinenko + + * Makefile.util.def (libgrubmods.a): Add -Wno-error=logical-op + -Wno-error=missing-noreturn. + +2012-02-22 Vladimir Serbinenko + + * grub-core/fs/affs.c (grub_affs_read_block): Avoid <= in loop + condition to avoid possibly infinite loops. + * grub-core/lib/pbkdf2.c (grub_crypto_pbkdf2): Likewise. + * grub-core/lib/xzembed/xz_dec_bcj.c (bcj_powerpc): Likewise. + +2012-02-22 Vladimir Serbinenko + + * grub-core/normal/charset.c (bidi_line_wrap): Avoid <= in loop + condition to avoid possibly infinite loops. + +2012-02-22 Vladimir Serbinenko + + * grub-core/kern/emu/hostdisk.c (read_device_map): Add missing noreturn + on show_error. + +2012-02-22 Vladimir Serbinenko + + * grub-core/kern/disk.c (grub_disk_write): Add missing const qualifier. + +2012-02-22 Vladimir Serbinenko + + * grub-core/kern/corecmd.c (grub_core_cmd_ls): Add missing var init. + +2012-02-22 Vladimir Serbinenko + + * util/bin2h.c (usage): Add missing attribute noreturn. + +2012-02-22 Vladimir Serbinenko + + * grub-core/commands/testload.c (grub_cmd_testload): Fix overflow + if the size isn't divisible by 512. + +2012-02-22 Vladimir Serbinenko + + Make list_push and list_remove functions rather than inline functions + to decrease size and avoid aliasing violations. + + * include/grub/list.h (grub_list_push): Move to ... + * grub-core/kern/list.c (grub_list_push): ... here. Don't inline. + * include/grub/list.h (grub_list_remove): Move to ... + * grub-core/kern/list.c (grub_list_remove): ... here. Don't inline. + +2012-02-22 Vladimir Serbinenko + + * configure.ac: Disable for now -Wstack-protector, -Wunreachable-code + and -Wunused-result. + +2012-02-21 Vladimir Serbinenko + + * grub-core/net/net.c (grub_cmd_deladdr): Fix index. + Reported by: Seth Goldberg + +2012-02-21 Vladimir Serbinenko + + * configure.ac: Add -fno-builtin-gettext on host if NLS is disabled. + +2012-02-19 Samuel Thibault + + * util/grub-mkconfig.in (GRUB_CMDLINE_GNUMACH): Export variable. + * util/grub.d/10_hurd.in: Include GRUB_CMDLINE_GNUMACH in gnumach + command line. + * docs/grub.texi (Simple configuration): Document + GRUB_CMDLINE_GNUMACH. + +2012-02-18 Vladimir Serbinenko + + * conf/Makefile.common (platform_SCRIPTS): New variable. + (platform_PROGRAMS): Likewise. + * gentpl.py: Mark *,module and *.image for install. + * grub-core/gdb_grub.in: Add a notice of expected environment. + * grub-core/Makefile.core.def (gdb_grub): Mark for install. + (gmodule.pl): Likewise. + +2012-02-18 Vladimir Serbinenko + + Replace grub_checkkey with grub_getkey_noblock. + + * grub-core/kern/term.c (grub_checkkey): Replaced with ... + (grub_getkey_noblock): ... this. All users updated. + +2012-02-18 Vladimir Serbinenko + + * grub-core/kern/emu/console.c: Move to ... + * grub-core/term/emu/console.c: ...here. + (grub_ncurses_getkey): Fix return value if no key is detected. + +2012-02-12 Vladimir Serbinenko + + * include/grub/test.h (grub_unit_test_init): Add missing prototype. + (grub_unit_test_fini): Likewise. + * tests/lib/unit_test.c (main): Remove extra nested external prototype. + +2012-02-12 Vladimir Serbinenko + + * include/grub/test.h (GRUB_UNIT_TEST) + +2012-02-12 Vladimir Serbinenko + + * grub-core/script/execute.c (grub_script_break): Clarify logic. + Better error handling. + (grub_script_return): Likewise. + * grub-core/script/lexer.c (grub_script_lexer_yywrap): Likewise. + +2012-02-12 Vladimir Serbinenko + + * grub-core/lib/libgcrypt_wrap/cipher_wrap.h (__GNU_LIBRARY__): Avoid + rimplicit redifinition. + +2012-02-12 Vladimir Serbinenko + + * docs/grub.texi (Internationalisation): Detail (lack of) collation in + GRUB. + +2012-02-12 Vladimir Serbinenko + + * grub-core/normal/cmdline.c (grub_cmdline_get): Don't gettext prompt. + * grub-core/normal/main.c (grub_normal_read_line_real): Gettext + prompt here. + +2012-02-12 Vladimir Serbinenko + + * grub-core/fs/zfs/zfs.c (zfs_fetch_nvlist): Mark unknown member here + as GRUB_ERR_BUG. Don't malloc if no device is available. + +2012-02-12 Vladimir Serbinenko + + * grub-core/term/terminfo.c (grub_terminfo_output_unregister): + Mark calling with invalid term as GRUB_ERR_BUG. + +2012-02-12 Vladimir Serbinenko + + * grub-core/net/tftp.c (tftp_receive): Silently discard too short + packets rather than raising an error. + +2012-02-12 Vladimir Serbinenko + + * grub-core/loader/xnu.c (grub_xnu_writetree_toheap_real): Avoid set + in if. + +2012-02-12 Vladimir Serbinenko + + * grub-core/loader/efi/appleloader.c (grub_cmd_appleloader): Move + diagnostic to dprintf. + * grub-core/loader/i386/pc/linux.c (grub_cmd_linux): Likewise. + +2012-02-12 Vladimir Serbinenko + + * grub-core/kern/corecmd.c (grub_core_cmd_ls): Handle error in parsing + device name. + +2012-02-12 Vladimir Serbinenko + + * grub-core/fs/ntfs.c (locate_attr): Avoid set in if. + (grub_ntfs_iterate_dir): Likewise. + +2012-02-12 Vladimir Serbinenko + + Efiemu stylistic fixes and gettext. + + * grub-core/efiemu/i386/loadcore32.c + (grub_arch_efiemu_relocate_symbols32): Avoid set in if. + * grub-core/efiemu/i386/loadcore64.c + (grub_arch_efiemu_relocate_symbols64): Likewise. + * grub-core/efiemu/i386/pc/cfgtables.c + (grub_machine_efiemu_init_tables): Likewise. + * grub-core/efiemu/loadcore.c (grub_efiemu_resolve_symbols): Likewise. + (grub_efiemu_loadcore_initXX): Add a filename argument. + All users updated. + Improved error message. + * grub-core/efiemu/loadcore_common.c (grub_efiemu_loadcore_init): + Add a filename argument. + All users updated. + * grub-core/efiemu/symbols.c (grub_efiemu_set_virtual_address_map): + Reclassify double relocation as GRUB_ERR_BUG. + +2012-02-12 Vladimir Serbinenko + + * grub-core/commands/i386/pc/play.c (grub_cmd_play): Improve error + handling. + +2012-02-12 Vladimir Serbinenko + + * grub-core/commands/hdparm.c (grub_cmd_hdparm): Allow running + on partition. + +2012-02-12 Vladimir Serbinenko + + * include/grub/misc.h (grub_error_save): Fix cleaning grub_errno. + +2012-02-12 Vladimir Serbinenko + + Improve string. Gettextize. + 2012-02-11 Vladimir Serbinenko * configure.ac: Remove -Winline altogether and -Wmissing-prototypes on diff --cc grub-core/kern/list.c index 78005db1e,81248db48..a256bb3f8 --- a/grub-core/kern/list.c +++ b/grub-core/kern/list.c @@@ -32,60 -32,3 +32,24 @@@ grub_named_list_find (grub_named_list_ return NULL; } + - void - grub_prio_list_insert (grub_prio_list_t *head, grub_prio_list_t nitem) - { - int inactive = 0; - - grub_prio_list_t *p, q; - - for (p = head, q = *p; q; p = &(q->next), q = q->next) - { - int r; - - r = grub_strcmp (nitem->name, q->name); - if (r < 0) - break; - if (r > 0) - continue; - - if (nitem->prio >= (q->prio & GRUB_PRIO_LIST_PRIO_MASK)) - { - q->prio &= ~GRUB_PRIO_LIST_FLAG_ACTIVE; - break; - } - - inactive = 1; - } - - *p = nitem; - nitem->next = q; - if (q) - q->prev = &nitem->next; - nitem->prev = p; - - if (! inactive) - nitem->prio |= GRUB_PRIO_LIST_FLAG_ACTIVE; - } - +void +grub_list_push (grub_list_t *head, grub_list_t item) +{ + item->prev = head; + if (*head) + (*head)->prev = &item->next; + item->next = *head; + *head = item; +} + +void +grub_list_remove (grub_list_t item) +{ + if (item->prev) + *item->prev = item->next; + if (item->next) + item->next->prev = item->prev; + item->next = 0; + item->prev = 0; +}