Colin Watson
68ac8c8d15
* disk/mdraid_linux.c (struct grub_raid_super_1x): Remove
...
__attribute__ ((packed)), leaving a comment.
(grub_mdraid_detect): Split out 0.9 and 1.x detection to ...
(grub_mdraid_detect_09): ... here and ...
(grub_mdraid_detect_1x): ... here.
* disk/raid.c (insert_array): Check for grub_xasprintf returning
NULL.
2010-07-19 11:35:16 +01:00
Colin Watson
1c785436da
* disk/dmraid_nvidia.c (grub_dmraid_nv_detect): Add start_sector
...
parameter. Set its pointer target to 0.
* disk/mdraid_linux.c (grub_mdraid_detect): Add start_sector
parameter. Set its pointer target to 0 for 0.9 metadata, or to the
`data_offset' value from the superblock for 1.x metadata.
* disk/raid.c (grub_raid_read): Offset reads by the start sector of
data on the device.
(insert_array): Record the start sector of data on the device.
(grub_raid_register): Pass start_sector parameters to
grub_raid_list->detect and insert_array.
* include/grub/raid.h (struct grub_raid_array): Add start_sector
member.
(struct grub_raid): Add start_sector parameter to `detect'.
2010-07-18 18:31:10 +01:00
Colin Watson
139ab97dc3
* disk/raid.c (insert_array): Use md/%s to name mdadm 1.x devices,
...
removing the homehost if present.
* kern/emu/getroot.c (get_mdadm_name) [__linux__]: New function.
(grub_util_get_grub_dev): Use md/%s to name mdadm 1.x devices,
removing the homehost if present.
(grub_util_get_grub_dev) [__linux__]: Get the array name from mdadm
if possible.
* util/i386/pc/grub-setup.c (main): Handle md/* devices.
2010-07-18 15:53:14 +01:00
Colin Watson
5771289a14
* util/import_unicode.py: Remove unnecessary imports.
2010-07-17 19:27:18 +01:00
Colin Watson
41f435b1b4
merge mainline
2010-07-17 11:17:49 +01:00
Aleš Nesrsta
5dab68dfa4
Hotplugging and USB hub support.
...
* bus/usb/ohci.c (grub_ohci_td): Add convenience fields.
(grub_ohci): Likewise.
(GRUB_OHCI_REG_CONTROL_BULK_ENABLE): New definition.
(GRUB_OHCI_REG_CONTROL_CONTROL_ENABLE): Likewise.
(GRUB_OHCI_RESET_CONNECT_CHANGE): Likewise.
(GRUB_OHCI_CTRL_EDS): Likewise.
(GRUB_OHCI_BULK_EDS): Likewise.
(GRUB_OHCI_TDS): Likewise.
(GRUB_OHCI_ED_ADDR_MASK): Likewise.
(grub_ohci_ed_phys2virt): New function.
(grub_ohci_virt_to_phys): Likewise.
(grub_ohci_td_phys2virt): Likewise.
(grub_ohci_td_virt2phys): Likewise.
(grub_ohci_pci_iter): Allocate memory and don't wait for stable
attachment.
(grub_ohci_find_ed): New function.
(grub_ohci_alloc_td): Likewise.
(grub_ohci_free_td): Likewise.
(grub_ohci_free_tds): Likewise.
(grub_ohci_transfer): Use previously allocated memory.
(grub_ohci_portstatus): Reset status changed bit.
(grub_ohci_detect_dev): Supply status changed.
(grub_ohci_fini_hw): Free memory.
(grub_ohci_restore_hw): Reallocate memory.
* bus/usb/uhci.c (grub_uhci_portstatus): Don't reset on disable.
Reset status change.
(grub_uhci_detect_dev): Supply status_change.
* bus/usb/usb.c (attach_hooks): New var.
(grub_usb_device_attach): New function.
(grub_usb_register_attach_hook_class): Likewise.
(grub_usb_unregister_attach_hook_class): Likewise.
* bus/usb/usbhub.c (grub_usb_hub_add_dev): Handle errors correctly.
(grub_usb_add_hub): Reset connection changed bit.
(attach_root_port): New function.
(grub_usb_root_hub): Likewise.
(poll_nonroot_hub): Likewise.
(grub_usb_poll_devices): Likewise.
* commands/usbtest.c (grub_cmd_usbtest): Poll devices before listing.
* disk/usbms.c (grub_usbms_open): Use device hooks.
(grub_usbms_iterate) :Poll devices.
(grub_usbms_finddevs): Split into ...
(grub_usbms_attach): ... this ...
(grub_usbms_attach): ... and this.
* include/grub/usb.h (grub_usb_controller_dev): Supply status_changed
in detect_dev.
(grub_usb_interface): New fields attached and detach_hook.
(grub_usb_attach_hook_class): New type.
(grub_usb_attach_desc): New struct.
(grub_usb_register_attach_hook_class): New function.
(grub_usb_unregister_attach_hook_class): Likewise.
(grub_usb_poll_devices): Likewise.
(grub_usb_device_attach): Likewise.
* include/grub/usbtrans.h (GRUB_USB_HUB_FEATURE_C_CONNECTED): New const.
(GRUB_USB_HUB_STATUS_C_CONNECTED): Likewise.
2010-07-17 03:06:34 +02:00
Vladimir 'phcoder' Serbinenko
b92c6ff67f
Merge mainline into usb
2010-07-17 02:44:33 +02:00
Vladimir 'phcoder' Serbinenko
3222efaff3
* include/grub/bsdlabel.h (GRUB_PC_PARTITION_BSD_LABEL_WHOLE_DISK_PARTITION): New definition.
...
* partmap/bsdlabel.c (bsdlabel_partition_map_iterate): Use FreeBSD
delta determination style. Works with most NetBSD partitions too.
2010-07-17 01:57:48 +02:00
Vladimir 'phcoder' Serbinenko
139b714a93
* kern/partition.c [GRUB_UTIL]: Add missing util/misc.h inclusion.
...
* partmap/bsdlabel.c [GRUB_UTIL]: Likewise.
2010-07-17 01:55:01 +02:00
Vladimir 'phcoder' Serbinenko
986aad56c1
* disk/scsi.c (grub_scsi_open): Fix incorrect pointer dereference.
2010-07-17 01:52:41 +02:00
Vladimir 'phcoder' Serbinenko
af0bedf8af
merge mainline into usb
2010-07-17 01:14:13 +02:00
Vladimir 'phcoder' Serbinenko
36f84f1a7c
Use inline functions instead of macros
2010-07-17 00:57:14 +02:00
Vladimir 'phcoder' Serbinenko
9c17c6411a
Fix mismerge
2010-07-17 00:56:38 +02:00
Anton Blanchard
99be513c3b
* loader/powerpc/ieee1275/linux.c (grub_cmd_linux): Do not reject
...
ET_DYN files.
2010-07-14 16:47:45 +01:00
Grégoire Sutre
18075f6254
Fix condition in Makefile.in's LINGUAS assignment.
2010-07-14 16:47:28 +02:00
Grégoire Sutre
8d9a5b15e3
Discard improperly nested partitions.
2010-07-14 11:26:17 +02:00
Colin Watson
19563c25c1
* Makefile.in (.SUFFIX): Spell correctly, as ...
...
(.SUFFIXES): ... this. Fixes bug where `make foo' (where foo is a
bare module name without `.mod', e.g. `test') tried to invoke a
Modula-2 compiler.
2010-07-13 12:24:07 +01:00
Colin Watson
1a1f1e6794
* README: Point to the Info manual.
2010-07-13 12:20:32 +01:00
Jiro SEKIBA
811b0dcab8
* fs/nilfs2.c: fix macro NILFS_2ND_SUPER_BLOCK to calculate
...
2nd superblock position from partition size.
2010-07-13 11:47:30 +02:00
Colin Watson
e4f4eafc91
* Makefile.in (MAINTAINER_CLEANFILES): Remove
...
unicode/UnicodeData.txt, unicode/BidiMirroring.txt, and
unicode/ArabicShaping.txt again; these are inputs to autogen.sh, not
outputs.
2010-07-10 22:37:05 +01:00
Vladimir 'phcoder' Serbinenko
4274c30fbc
Restructure SCSI .id handling.
...
Reported and tested by: Aleš Nesrsta.
* disk/ata.c (grub_atapi_close): Removed. All users updated.
(grub_atapi_dev): Changed .name to "ata". New field .id.
* disk/usbms.c (grub_usbms_close): Removed. All users updated.
(grub_usbms_dev): New field .id.
* disk/scsi.c (grub_scsi_iterate): Generate name.
(grub_scsi_open): Parse name.
* include/grub/scsi.h (grub_make_scsi_id): New function.
(grub_scsi_dev): Change iterate and open to number instead of naming
busses. All users updated.
(grub_scsi): Remove name. Add .bus.
2010-07-10 02:59:33 +02:00
Vladimir 'phcoder' Serbinenko
5bc24388fb
* commands/help.c (grub_cmd_help): Fix a typo.
2010-07-10 02:40:41 +02:00
Vladimir 'phcoder' Serbinenko
249975ba6b
* normal/term.c (put_glyphs_terminal): Fix state->num_lines counting.
...
Reported and tested by: Colin Watson.
2010-07-10 02:23:48 +02:00
Vladimir 'phcoder' Serbinenko
3eaac1a13e
* util/grub-mkrescue.in: Don't use tar GNU-ism since it's not necessary
...
in this context.
2010-07-10 02:15:49 +02:00
starous
1b43dba911
USB hot-plugging
2010-07-08 22:54:35 +02:00
Vladimir 'phcoder' Serbinenko
becce1b16a
* tests/util/grub-shell.in: Remove bashisms and declare as sh script.
2010-07-07 17:51:26 +02:00
Colin Watson
f7bf0918aa
* term/gfxterm.c (grub_gfxterm_background_image_cmd): Fix
...
indentation.
2010-07-07 14:12:16 +01:00
Colin Watson
0b0f9620f2
* conf/common.rmk (grub_probe_SOURCES): Add disk/raid5_recover.c
...
and disk/raid6_recover.c.
* conf/i386-pc.rmk (grub_setup_SOURCES): Likewise.
* conf/sparc64-ieee1275.rmk (grub_setup_SOURCES): Likewise.
2010-07-06 19:27:55 +01:00
Colin Watson
1e54546914
* term/gfxterm.c (repaint_schedulded): Rename to ...
...
(repaint_scheduled): ... this. Update all callers.
(repaint_was_schedulded): Rename to ...
(repaint_was_scheduled): ... this. Update all callers.
2010-07-06 18:31:45 +01:00
Colin Watson
5357687a55
* util/deviceiter.c (grub_util_iterate_devices): Skip MD devices,
...
which we expect to be handled by upper layers.
2010-07-06 15:10:36 +01:00
BVK Chaitanya
29d7e783d2
* bus/usb/usbhub.c: #include time.h header.
2010-07-06 14:53:55 +05:30
Colin Watson
37582066cd
* fs/reiserfs.c (grub_reiserfs_iterate_dir): Zero out first byte of
...
entry_name also for entries without stat blocks (e.g. ".."); fixes
corruption of the first entry in a directory.
2010-07-06 09:51:42 +01:00
Colin Watson
c8c069533f
* util/grub.d/00_header.in: Process GRUB_THEME and GRUB_BACKGROUND
...
after setting gfxterm as the active terminal. GRUB_BACKGROUND
doesn't work otherwise.
2010-07-06 09:42:37 +01:00
Vladimir 'phcoder' Serbinenko
75d959ea7c
Revert latest two Aleš' commits
2010-07-06 01:55:26 +02:00
starous
f1f7d19ead
ChangeLog & usbhub.c correction
2010-07-05 20:34:27 +02:00
starous
525ba5f9d0
UHCI portstatus correction
2010-07-05 19:06:47 +02:00
starous
1a0742d4e2
USB hub support
2010-07-05 19:02:05 +02:00
Colin Watson
e75056f162
* docs/grub.texi (Features): Update list of supported file systems.
...
(GNU/Linux): Update for GRUB 2.
(Serial terminal): Remove mention of --disable-serial, which was a
GRUB Legacy configure option. Update instructions to use
`terminal_input' and `terminal_output' rather than `terminal'.
(Vendor power-on keys): Copy-edit. Add cross-references to `Simple
configuration' and `Installing GRUB using grub-install'.
(Menu entry editor): Update for GRUB 2.
(terminfo): Add vt100-color, ieee1275, and dumb terminal types.
Document new -a, -u, and -v options.
(initrd): New section.
(initrd16): New section.
(linux): New section.
(linux16): New section.
(search): The `var' argument to `--set' is optional.
(GRUB only offers a rescue shell): Go into a little more detail on
drive ordering.
2010-07-05 11:08:04 +01:00
Colin Watson
5cf691510f
* Makefile.in: Set LINGUAS to empty if ENABLE_NLS is undefined.
2010-07-05 09:29:02 +01:00
Colin Watson
fcda2a1f80
fix typo in reporter name
2010-07-05 01:45:25 +01:00
Colin Watson
e3f90044e1
* Makefile.in (MAINTAINER_CLEANFILES): Add unicode/UnicodeData.txt,
...
unicode/BidiMirroring.txt, unicode/ArabicShaping.txt, and unidata.c.
2010-07-05 01:24:10 +01:00
Colin Watson
38d8f4f3f7
* util/i386/pc/grub-setup.c (setup): Rename prefix to
...
install_prefix, in line with install_dos_part and install_bsd_part.
Add new prefix variable, which is copied to install_prefix after
comparing core.img in memory with the one read from disk in the
no-embedding case, and use that rather than overwriting
install_prefix immediately when installing to a partition.
Fixes Debian bug #586621 ; based on patches by Matt Kraai and M. Vefa
Bicakci.
2010-07-05 01:09:00 +01:00
Grégoire Sutre
57ebd41ef1
Avoid == in test command, it's not portable.
2010-07-05 00:45:14 +02:00
Colin Watson
cb7f64b229
* kern/emu/getroot.c [__GNU__]: Include <sys/mman.h> for munmap.
2010-07-04 22:00:45 +01:00
Vladimir 'phcoder' Serbinenko
72a2026d33
missing ChangeLog commit.
2010-07-04 14:29:01 +02:00
Vladimir 'phcoder' Serbinenko
653d6e94b0
* util/i386/efi/grub-install.in: Don't use empty grub_device.
...
Reported by: Tito Keitel.
2010-07-04 14:23:55 +02:00
Grégoire Sutre
6b654bb0a5
Do not embed when there are multiple (top-level) partmaps.
2010-07-04 11:13:31 +02:00
Vladimir 'phcoder' Serbinenko
df3eb88f04
Bidi and diacritics support.
...
* Makefile.in (widthspec.bin): New target.
(widthspec.h): Likewise.
(TARGET_CFLAGS): Add -DHAVE_UNIFONT_WIDTHSPEC=1 if font was available.
* autogen.sh: Generate unidata.c.
* commands/cat.c (grub_cmd_cat): Don't use grub_putchar.
* commands/ls.c (grub_ls_list_devices): Likewise.
(grub_ls_list_files): Likewise.
* commands/minicmd.c (grub_mini_cmd_cat): Likewise.
(grub_mini_cmd_lsmod): Likewise.
* commands/read.c: Likewise.
* kern/corecmd.c (grub_core_cmd_ls): Likewise.
* kern/rescue_reader.c (grub_rescue_read_line): Likewise.
* lib/arg.c (grub_arg_show_help): Likewise.
* lib/crypto.c (grub_password_get): Likewise.
* normal/auth.c (grub_username_get): Likewise.
* normal/misc.c (grub_normal_print_device_info): Likewise.
* commands/help.c (grub_cmd_help): Use grub_unicode_aglomerate_comb.
* conf/common.rmk (grub_mkfont_SOURCES): Add unidata.c.
(gfxmenu_mod_SOURCES): Add gfxmenu/font.c.
(normal/charset.c_DEPENDENCIES): New variable.
(normal_mod_SOURCES): Add normal/charset.c and unidata.c.
(pkglib_MODULES): Remove charset.mod.
(charset_mod_SOURCES): Removed.
(charset_mod_CFLAGS): Likewise.
(charset_mod_LDFLAGS): Likewise.
(pkglib_MODULES) [ieee1275]: Remove terminfo.mod.
* conf/powerpc-ieee1275.rmk (kernel_img_SOURCES): Add term/terminfo.c
and term/tparm.c.
* conf/sparc64-ieee1275.rmk (kernel_img_SOURCES): Likewise.
* conf/i386-ieee1275.rmk (kernel_img_SOURCES): Likewise.
(kernel_img_HEADERS): Add terminfo.h.
* font/font.c (ascii_glyph_lookup): Return NULL on failure.
Fill ->font. Reverse ascii bitmaps.
(grub_font_get_xheight): New function.
* font/font.c (grub_font_get_string_width): Moved from here ...
* gfxmenu/font.c (grub_font_get_string_width): ... here.
* font/font.c (grub_font_draw_string): Moved from here ...
* gfxmenu/font.c (grub_font_draw_string): ... here.
* font/font.c (grub_font_dup_glyph): New function.
(grub_font_blit_glyph): Likewise.
(grub_font_blit_glyph_mirror): Likewise.
(blit_comb): Likewise.
(grub_font_construct_dry_run): Likewise.
(grub_font_get_constructed_device_width): Likewise.
(grub_font_construct_glyph): Likewise.
* include/grub/charset.h (grub_ucs4_to_utf8): New proto.
* include/grub/misc.h (grub_utf8_to_ucs4): Moved from here ...
* include/grub/charset.h (grub_utf8_to_ucs4): ... here.
* include/grub/font.h (GRUB_FONT_CODE_CHAR_MASK): New constant.
(GRUB_FONT_CODE_RIGHT_JOINED): Likewise.
(GRUB_FONT_CODE_LEFT_JOINED): Likewise.
(grub_font_get_xheight): New proto.
(grub_font_get_constructed_device_width): Likewise.
(grub_font_construct_glyph): Likewise.
* include/grub/font.h (grub_font_get_string_width): Moved from here ...
* include/grub/gfxmenu_view.h (grub_font_get_string_width): ... here.
* include/grub/font.h (grub_font_draw_string): Moved from here ...
* include/grub/gfxmenu_view.h (grub_font_draw_string): ... here.
* include/grub/i386/vga_common.h (grub_console_putchar): Moved from here..
* include/grub/i386/pc/console.h (grub_console_putchar): ... here.
* include/grub/i386/vga_common.h (grub_console_real_putchar): Removed.
(grub_console_getcharwidth): Likewise.
* include/grub/misc.h (grub_xputs): New proto.
(grub_puts): Inlined.
* include/grub/normal.h (grub_print_ucs4): Add margin specification.
(grub_normal_get_line_counter): Removed.
(grub_install_newline_hook): Likewise.
(grub_normal_get_char_counter): New proto.
(grub_normal_reset_more): Likewise.
(grub_xputs_normal): Likewise.
* include/grub/powerpc/ieee1275/console.h: Removed.
* include/grub/sparc64/ieee1275/console.h: Likewise.
* include/grub/term.h (GRUB_TERM_CODE_TYPE_MASK): New definition.
(GRUB_TERM_CODE_TYPE_ASCII): Likewise.
(GRUB_TERM_CODE_TYPE_CP437): Likewise.
(GRUB_TERM_CODE_TYPE_UTF8_LOGICAL): Likewise.
(GRUB_TERM_CODE_TYPE_UTF8_VISUAL): Likewise.
(GRUB_TERM_CODE_TYPE_VISUAL_GLYPHS): Likewise.
(grub_term_input): Pass reference to self. All users updated.
(grub_term_output): Pass grub_unicode_glyph to putchar and getcharwidth.
Pass reference to self. New fields normal_color, highlight_color and
data. All users updated.
(grub_putchar): Removed.
(grub_putcode): Remove EXPORT_FUNC since it's not in kernel anymore.
(grub_unicode_estimate_width): New function.
(grub_term_getcharwidth): Add defaults.
(GRUB_TERM_DEFAULT_NORMAL_COLOR): New definition.
(GRUB_TERM_DEFAULT_HIGHLIGHT_COLOR): Likewise.
(GRUB_TERM_DEFAULT_STANDARD_COLOR): Likewise.
(grub_cls): Remove EXPORT_FUNC.
(grub_setcolorstate): Inline.
(grub_newline_hook): Removed.
* include/grub/terminfo.h: Rewritten. All users updated.
* include/grub/unicode.h: New file.
* include/grub/video.h (grub_video_signed_rect): New type.
* kern/emu/console.c (grub_console_highlight_color): Removed.
(grub_console_normal_color): Likewise.
(grub_console_standard_color): Made static.
(grub_ncurses_putchar): Remove mapping.
(grub_ncurses_getcharwidth): Removed.
(grub_ncurses_term_output): Declare as GRUB_TERM_CODE_TYPE_ASCII.
(grub_ncurses_setcolor): Removed.
(grub_ncurses_getcolor): Likewise.
* kern/i386/pc/startup.S (grub_console_real_putchar): Renamed to ...
(grub_console_putchar): ... this.
(grub_console_putchar): Handle argument difference.
* kern/ieee1275/init.c (grub_machine_init): Split console_init into
console_init_early and console_init_lately.
* kern/sparc64/ieee1275/init.c (grub_machine_init): Likewise.
* kern/misc.c (grub_puts): Removed.
(grub_vprintf): Store UTF-8 string instead of outputting it directly.
(grub_vsnprintf_real): Remove str = NULL support.
* kern/misc.c (grub_utf8_to_ucs4): Move from here ...
* normal/charset.c (grub_utf8_to_ucs4): ... here.
* kern/term.c (grub_putcode): Renamed to ...
(grub_putcode_dumb): ... this. Pass grub_unicode_glyph instead of code.
(grub_putchar): Removed.
(grub_xputs_dumb): New function.
(grub_xputs): New variable.
* lib/charset.c: Move from here ...
* normal/charset.c: ... to here.
(grub_ucs4_to_utf8): New function.
(grub_ucs4_to_utf8_alloc): Use grub_ucs4_to_utf8.
(join_types): New variable.
(unpack_join): New function.
(bidi_types): New variable.
(unpack_bidi): New function.
(get_bidi_type): Likewise.
(get_join_type): Likewise.
(is_mirrored): Likewise.
(grub_unicode_get_comb_type): Likewise.
(grub_unicode_estimate_width) [HAVE_UNIFONT_WIDTHSPEC]: Likewise.
(is_type_after): Likewise.
(grub_unicode_aglomerate_comb): Likewise.
(bidi_line_wrap): Likewise.
(grub_bidi_line_logical_to_visual): Likewise.
(grub_bidi_logical_to_visual): Likewise.
(grub_unicode_mirror_code): Likewise.
(grub_unicode_shape_code): Likewise.
* normal/cmdline.c (grub_cmdline_get): Reset more counter.
Don't use grub_putchar.
* normal/main.c (grub_normal_init_page): Use grub_putcode.
(grub_normal_reader_init): Likewise.
(grub_xputs_saved): New variable.
(GRUB_MOD_INIT): Set grub_xputs.
(GRUB_MOD_FINI): Restore grub_xputs.
* normal/menu.c (grub_wait_after_message): Don't use grub_putchar.
(menu_init): Avoid printing gfxmenu error.
(show_menu): Use grub_normal_get_char_counter.
* normal/menu_entry.c (update_screen): Fix out-of-array.
(complete): Avoid NULL dereferencing.
* grub_menu_entry_run (grub_menu_entry_run): Don't use putchar.
* normal/menu_text.c (print_spaces): Removed.
(grub_print_ucs4): Likewise.
(grub_print_message_indented): Use grub_print_ucs4.
(print_message): Use grub_putcode.
(print_entry): Hanlde diacritics.
* normal/term.c (term_state): New type.
(grub_more_lines): Removed.
(term_states): New variable.
(grub_normal_line_counter): Renamed to ..
(grub_normal_char_counter): ...this. All users updated.
(grub_normal_get_line_counter): Renamed to ...
(grub_normal_get_char_counter): ... this.
(grub_normal_reset_more): New function.
(process_newline): Removed.
(print_more): New function.
(grub_install_newline_hook): Removed.
(map_code): New function.
(grub_puts_terminal): Use grub_print_ucs4.
(putglyph): New function.
(putcode_real): Likewise.
(grub_putcode): Use putcode_real.
(get_maxwidth): New function.
(get_startwidth): Likewise.
(print_ucs4_terminal): Likewise.
(find_term_state): Likewise.
(put_glyphs_terminal): Likewise.
(print_backlog): Likewise.
(print_ucs4_real): Likewise.
(grub_print_ucs4): Likewise.
(grub_xputs_normal): Likewise.
* term/efi/console.c (grub_console_putchar): Output diacritics.
(grub_console_getcharwidth): Removed.
(grub_console_term_output): Declare as GRUB_TERM_CODE_TYPE_UCS4_VISUAL.
* term/gfxterm.c (clear_char): Free chars.
(scroll_up): Avoid leaking memory.
(grub_gfxterm_putchar): Support diacritics.
(grub_video_term): Declare as GRUB_TERM_CODE_TYPE_UCS4_VISUAL.
* term/i386/pc/console.c (grub_console_term_output): Declare as
GRUB_TERM_CODE_TYPE_VGA.
* term/i386/pc/vga.c (grub_vga_term): Declare as
GRUB_TERM_CODE_TYPE_VISUAL_GLYPHS.
* term/i386/pc/vga_text.c (grub_vga_text_term): Declare as
GRUB_TERM_CODE_TYPE_VGA.
* term/i386/vga_common.c (map_char): Removed.
(grub_console_putchar): Likewise.
(grub_console_getcharwidth): Likewise.
* term/ieee1275/ofconsole.c: Simplify using terminfo.
(colors): Reordered to match terminfo.
(grub_ofconsole_normal_color): Removed.
(grub_ofconsole_writeesc): Likewise.
(grub_ofconsole_highlight_color): Likewise.
(grub_ofconsole_getcharwidth): Likewise.
(grub_ofconsole_setcolorstate): Likewise.
(grub_ofconsole_setcolor): Likewise.
(grub_ofconsole_getcolor): Likewise.
(grub_ofconsole_readkey): Renamed to ...
(readkey): ... this. Remove escape sequence handling. Return -1 on no
key.
(grub_ofconsole_checkkey): Removed.
(grub_ofconsole_getkey): Likewise.
(grub_ofconsole_getxy): Likewise.
(grub_ofconsole_gotoxy): Likewise.
(grub_ofconsole_cls): Likewise.
(grub_ofconsole_refresh): Likewise.
(grub_ofconsole_terminfo_input): New struct.
(grub_ofconsole_terminfo_output): Likewise.
(grub_ofconsole_term_input): Use terminfo.
(grub_ofconsole_term_output): Likewise.
(grub_console_init): Split into ...
(grub_console_init_early): ...this and ...
(grub_console_init_lately): ...this. Use terminfo.
(grub_ofconsole_putchar): Renamed to ...
(put): ... this. Remove mapping.
(grub_ofconsole_term_output): Declare as GRUB_TERM_CODE_TYPE_ASCII.
* term/serial.c: Simplify using terminfo.
(xpos): Removed.
(ypos): Likewise.
(keep_track): Likewise.
(registered): Likewise.
(input_buf): Likewise.
(npending): Likewise.
(serial_translate_key_sequence): Likewise.
(fill_input_buf): Likewise.
(grub_serial_checkkey): Likewise.
(grub_serial_getkey): Likewise.
(grub_serial_getxy): Likewise.
(grub_serial_gotoxy): Likewise.
(grub_serial_putchar): Likewise.
(grub_serial_cls): Likewise.
(grub_serial_setcolorstate): Likewise.
(grub_serial_setcursor): Likewise.
(serial_hw_init): Use serial_hw_fetch.
(grub_serial_terminfo_input): New variable.
(grub_serial_terminfo_output): Likewise.
(grub_serial_term_input): Use terminfo.
(grub_serial_term_output): Likewise.
* term/terminfo.c (putstr): Use put.
(grub_terminfo_all_free): New function
(grub_terminfo_set_current): New types vt100-color, ieee1275 and dumb.
(grub_terminfo_output_register): New function.
(grub_terminfo_output_unregister): Likewise.
(grub_terminfo_getxy): Likewise.
(grub_terminfo_readkey): Likewise.
(grub_terminfo_checkkey): Likewise.
(grub_terminfo_getkey): Likewise.
(grub_terminfo_input_init): Likewise.
(print_terminfo): Likewise.
(grub_cmd_terminfo): Handle encoding.
(grub_terminfo_gotoxy): Track position.
(grub_terminfo_cls): Likewise.
(grub_terminfo_putchar): Likewise.
(grub_terminfo_setcolorstate): Handle colors
(grub_terminfo_cursor_on): This ...
(grub_terminfo_cursor_off): ... and this merged into ...
(grub_terminfo_setcursor): ... this.
* term/tparm.c (grub_terminfo_tparm): Avoid NULL dereferencing.
* unicode/ArabicShaping.txt: New file (imported from Unicode).
* unicode/BidiMirroring.txt: Likewise.
* unicode/UnicodeData.txt: Likewise.
* unicode/COPYING: Likewise.
* util/grub-editenv.c (grub_putchar): Removed.
(grub_xputs_real): New function.
(grub_xputs): New variable.
* util/grub-fstest.c (grub_putchar): Removed.
(grub_xputs_real): New function.
(grub_xputs): New variable.
* util/grub-mkdevicemap.c (grub_putchar): Removed.
(grub_xputs_real): New function.
(grub_xputs): New variable.
* util/grub-probe.c (grub_putchar): Removed.
(grub_xputs_real): New function.
(grub_xputs): New variable.
* util/grub-script-check.c (grub_putchar): Removed.
(grub_xputs_real): New function.
(grub_xputs): New variable.
* util/i386/pc/grub-setup.c (grub_putchar): Removed.
(grub_xputs_real): New function.
(grub_xputs): New variable.
* util/import_unicode.py: New file.
* util/grub-mkfont.c (ft_errmsgs): New array.
(grub_glyph_info): Make bitmap a pointer.
(file_formats): New type WIDTH_SPEC.
(grub_font_info): New members glyphs_unsorted, glyphs_sorted, num_glyphs.
(options): Add width-spec.
(help): Likewise.
(add_char): Renamed to ...
(add_glyph): ... this.
(add_glyph): Use index. Show freetype errors. Cut blank space at borders.
(glyph_replace): New type.
(subst_rightjoin), (subst_leftjoin), (subst_medijoin): New variables.
(add_char): New function.
(add_subst): Likewise.
(process_cursive): Likewise.
(add_font): Handle GSUB.
(write_font_width_spec): New function.
(main): Sort glyphs.
* commands/minicmd.c (grub_mini_cmd_clear): Moved from here ...
* normal/main.c (grub_mini_cmd_clear): ..here. All users updated.
* kern/term.c (grub_cls): Moved from here...
* normal/term.c (grub_cls): ... here.
2010-07-02 22:16:35 +02:00
Vladimir 'phcoder' Serbinenko
c23bb3837f
Update ChangeLog
2010-07-02 22:07:56 +02:00
Vladimir 'phcoder' Serbinenko
fb73efb794
Fix mismerge
2010-07-02 22:06:43 +02:00