1 2001-09-23 Andrew V. Samoilov <kai@cmail.ru>
3 * find.c: Include rx.h or regex.h
4 (get_line_at): New function. Returns malloc()ed null-terminated
5 line from file file_fd. Input is buffered in buf_size long
7 (search_content): Don't use external egrep.
8 Use get_line_at and regexp.
10 2001-09-21 Pavel Roskin <proski@gnu.org>
12 * cmd.c: Change all "long" variables to "off_t" whenever they
13 are used to store file sizes.
16 * fileopctx.h: Likewise.
18 * filegui.c: Likewise.
19 (show_bar): Take "double" arguments. Normalize arguments of
20 gauge_set_value() before converting them to "int".
22 2001-09-17 Pavel Roskin <proski@gnu.org>
24 * mouse.h: Major cleanup and interface change. init_mouse()
25 should only be called once, disable_mouse() and enable_mouse()
26 should be used later. Distinguish between disabled and
27 undetected mouse. Remove debugging stuff. Adjust all users.
28 * mouse.c: Implementation of the above.
29 * key.c: Don't use gpm_flag - check mouse_enabled instead.
31 2001-09-15 Pavel Roskin <proski@gnu.org>
33 * view.c: Cleanup of preprocessor directives.
38 * textconf.h: Get rid of all PORT_HAS_*. Adjust all users.
39 Continued eliminating GNOME code.
41 * cmd.c: Clean up unused GNOME code and some ifdef's.
47 * cmd.c (guess_message_value): Remove the argument. Adjust all
50 * textconf.c (features): Remove "edition", minor fixes.
51 (version): Don't report the current locale - it's meaningless,
52 especially if ENABLE_NLS is not defined.
54 * textconf.h: Remove status_using_ncurses - it's useless now.
55 Adjust all users. Call do_exit_ca_mode() and do_enter_ca_mode()
58 * main.c (init_xterm_support): Don't enable xterm_flag just
59 because of "kmous" in terminfo. Setiing this flag means much
60 more than just mouse support. Recognize terminals beginning
61 with "rxvt" and set xterm_flag for them.
63 * cmd.c (view_other_cmd): Don't check use_mouse_p before calling
64 init_mouse() and shut_mouse(), since those functions decide
65 themselves what to do.
66 * layout.c (done_screen): Likewise.
67 * main.c (setup_mc): Likewise.
68 * text.c (edition_post_exec): Likewise.
69 (edition_pre_exec): Likewise.
71 * user.h: Fix location of the home editor menu.
72 Reported by David Martin <dmartina@excite.es>
74 * mouse.h: Export xmouse_seq.
75 * mouse.c (init_mouse): Use xmouse_seq instead of hardcoded
77 * main.c (setup_post): Join with setup_mc().
78 (init_xterm_support): New function. Check mouse capability.
79 (OS_Setup): Remove parts that are now in init_xterm_support().
81 2001-09-14 Pavel Roskin <proski@gnu.org>
83 * key.c (get_event): Recognize KEY_MOUSE, not just MCKEY_MOUSE.
84 * mouse.c: Don't use or emulate keyok(), since MC understands
87 2001-09-11 Pavel Roskin <proski@gnu.org>
89 * cmd.c (check_for_default): Make accessible from other files.
90 * cmd.h: Declare check_for_default().
92 2001-09-10 Pavel Roskin <proski@gnu.org>
94 * layout.c: Use HAVE_TERMIOS_H and HAVE_SYS_IOCTL_H more
97 * subshell.c: Likewise.
99 * util.c: Remove unused includes.
101 * Makefile.am (mc_LDADD): Don't use LSLANG and LGPM, since they
102 are now included into MCLIBS.
104 * Makefile.am (mc_LDADD): Use INTLLIBS provided by gettext
107 2001-09-09 Pavel Roskin <proski@gnu.org>
109 * hotlist.c (load_hotlist): If cannot open hotlist, don't assume
110 that it needs to be migrated and don't warn the user.
112 2001-09-08 Pavel Roskin <proski@gnu.org>
114 * Makefile.am: Fix definitions of CONFDIR and LOCALEDIR.
116 * subshell.c: Move definitions of WEXITSTATUS and WIFEXITED
117 below all includes so that they can be defined elsewhere.
119 2001-09-07 Pavel Roskin <proski@gnu.org>
121 * myslang.h: Specify arguments to function-like macros or remove
122 them if they are unused.
124 * main.c: Remove old debugging code. Remove external function
126 (menu_bar_event): Remove, it's unused.
127 * main.h: Declare get_mc_lib_dir() and force_ugly_line_drawing.
128 * layout.c: Remove all external declarations.
130 * main.c (main): Call save_stop_handler() - it was ifdef'd out
133 * main.c: Remove all GNOME code.
135 * cmd.c: No need to define "MIDNIGHT" before including vfs.h.
137 * user.h: Remove all dirty tricks with "MIDNIGHT" - they are not
140 * global.h: Include io.h, pwd.h, grp.h and utime.h. Adjust all
141 sources not to include them and to include global.h at the right
144 * global.h: Include all time-related system includes, since
145 it's non-trivial (order, conflicts) and is better handled in one
148 2001-09-06 Pavel Roskin <proski@gnu.org>
150 * fsusage.c: Include sys/param.h before sys/mount.h - it's
151 required on some systems.
152 * mountlist.c: Likewise.
153 From Timur Bakeyev <mc@bat.ru>
155 2001-09-04 Pavel Roskin <proski@gnu.org>
157 * Makefile.am: Don't use substituted values directly. Define
158 CHARSET_SRC unconditionally. Join SRCS and HDRS.
160 2001-09-03 Pavel Roskin <proski@gnu.org>
162 * widget.c (label_new): Don't calculate dimensions of multiline
163 labels, since they cannot be changed and msglen() is already
164 used when the dialog is created.
166 * Makefile.in: Converted to ...
167 * Makefile.am: ... this.
169 * slint.c: Make more data and function static.
170 * key.h: Remove declarations that are now static.
171 * myslang.h: Likewise.
173 * x.h: Remove. Adjust all users. Make sure that global.h is
174 included instead. Don't include sys/param.h unconditionally -
175 rely on global.h taking care of it.
176 * Makefile.in: Remove x.h.
178 * color.c: Remove unused code.
181 2001-09-02 Pavel Roskin <proski@gnu.org>
183 * key.c: Remove support for BUGGY_CURSES.
185 * tty.h: Remove support for old curses and GNOME.
186 * global.h: Likewise.
188 * widget.c (label_new): Set initial width of the widget based on
191 * view.c (hex_search): Don't use sscanf() to search for quoted
192 strings - use strchr instead.
194 2001-08-31 23:14:21 Timur Bakeyev <mc@bat.ru>
196 * utilunix.c: init_groups(), destroy_groups(), get_user_permissions()
197 rewritten to use GTree structure and functions. Add new static helper
198 functions mc_gid_compare() and mc_gid_destroy().
200 * util.h: Removed deprecated structure user_in_groups.
202 * screen.c: Fixed typo in format report error string.
204 2001-08-31 23:14:21 Timur Bakeyev <mc@bat.ru>
206 * utilunix.c: get_user_rights() renamed into get_user_permissions().
207 delete_groups() renamed into destroy_groups().
209 * screen.c: Likewise.
212 2001-08-27 Pavel Roskin <proski@gnu.org>
214 * cmd.c (dirsizes_cmd): Don't cast st_size to long - use off_t
215 instead, since off_t can be longer.
216 Reported by Radovan Bukoci <rado@autoparts.sk>
218 2001-08-30 David Martin <dmartina@excite.es>
220 * info.c (info_show_info): Use size_trunc_len() instead of
221 print_bytesize(). Don't assume English word ordering. Add
222 singular message when single block.
223 * win.c (print_bytesize): Remove.
224 (sprint_bytesize): Remove.
225 * win.h: Remove print_bytesize() and sprint_bytesize().
227 * util.c (size_trunc_len): Add units parameter. Change all
230 * util.c (size_trunc_len): Print size values with some (little)
231 sense for tiny and even wee lengths (i.e. squeezed X terminals).
233 * info.c (info_show_info): Move comment line just before
234 translatable message so it's shown in .po files to alert
235 translators. The message (translated) is used to set the start
236 column (so the available width) for some "truncatable" strings.
238 2001-08-27 Pavel Roskin <proski@gnu.org>
240 * key.c (learn_key): Turn off keypad to disable intepreting keys
242 Reported by Frederic L. W. Meunier <fredlwm@pervalidus.net>
244 2001-08-26 Pavel Roskin <proski@gnu.org>
247 * Makefile.in: Remove all references to xcurses.c.
249 2001-08-24 Pavel Roskin <proski@gnu.org>
251 * user.h: Include "../edit/edit-widget.h", not
252 "../gtkedit/edit-widget.h".
254 * subshell.c: Use standard Autoconf symbols to determine whether
255 to include <stropts.h> and <grp.h>.
257 2001-08-23 Pavel Roskin <proski@gnu.org>
259 * subshell.c (feed_subshell): Don't wait forever after the first
260 select() call if fail_on_error is true. This alleviates hang
261 with zsh on QNX Neutrino.
263 2001-08-21 Pavel Roskin <proski@gnu.org>
265 * view.h: Declare view_dlg.
266 * main.h: Declare edit_dlg.
267 * layout.c (change_screen_size): Remove external declarations
270 2001-08-20 Pavel Roskin <proski@gnu.org>
272 * view.c (load_view_file) [!HAVE_MMAP]: Warning fix.
274 2001-08-19 Pavel Roskin <proski@gnu.org>
276 * main.c (mc_maybe_editor_or_viewer) [!USE_INTERNAL_EDIT]:
277 Reenable to make "mc -v" possible.
278 (do_nc): Call mc_maybe_editor_or_viewer() even if the editor
280 (argument_table) [!USE_INTERNAL_EDIT]: Disable "-e".
282 2001-08-19 Andrew V. Samoilov <sav@bcs.zp.ua>
284 * view.c (view_handle_key) [HAVE_CHARSET]: Remove unneeded
287 2001-08-19 Pavel Roskin <proski@gnu.org>
289 * screen.c [HAVE_X]: Disable unused code.
291 * fs.h: Correctly include <sys/param.h>.
292 * x.h: Include "global.h". Move all contents ...
295 * regex.c (regex_compile): Warning fix for ambiguous else.
297 2001-08-18 Pavel Roskin <proski@gnu.org>
299 * key.c (xmouse_get_event): Filter out GPM_UP events that don't
300 follow a GPM_DOWN event. Filter out events with unknown button
301 numbers, such as mouse wheel events.
302 (get_event): Return EV_NONE if xmouse_get_event() decided to
305 * main.c (init_sigchld): Disable subshell if SIGCHLD handler
308 * x.h: Instead of undefining MIX and MAX after <gnome.h> make
309 sure that <sys/param.h> is included before <gnome.h>.
311 2001-08-17 Pavel Roskin <proski@gnu.org>
313 * key.c (mc_bindings) [linux]: Remove old hack - recognizing
314 "\e[2~" on all terminals.
316 2001-08-16 Pavel Roskin <proski@gnu.org>
318 * charsets.c (load_codepages_list): Print a warning if
319 mc.charset cannot be opened.
320 * setup.c (load_setup) [HAVE_CHARSET]: Remove all popup messages
321 because it's to early to use them - ncurses would crash.
323 2001-08-15 Pavel Roskin <proski@gnu.org>
325 * util.c (strip_ctrl_codes): Rewrite using pointers. Fix
326 stripping sequences beginning with "\e[". Check is_printable().
328 * man2hlp.c: Remove HTML support. Remove old link support.
330 (print_string): Handle backslashes in verbatim mode too.
332 * main.c (setup_pre) [HAVE_CHARSET]: Fix compilation with
335 * textconf.c (features): Fix interpretation of
337 From David Martin <dmartina@excite.es>
339 2001-08-14 Pavel Roskin <proski@gnu.org>
341 * key.h (define_sequence): Change declaration to return int.
342 * key.c (define_sequence): Return 1 on success, 0 on error.
343 * learn.c (learn_button): Don't accept sequence if
344 define_sequence() has failed.
346 2001-08-12 Pavel Roskin <proski@gnu.org>
348 * learn.c (learn_save): Fix memory leak.
350 * dir.c (string_sortcomp) [HAVE_STRCOLL]: Make static.
352 * cmd.c (guess_message_value): Typo - replace "LC_MESSAGE" with
355 * dir.c (string_sortcomp) [HAVE_STRCOLL]: Always use strcmp()
356 for case sensitive sort. For case insensitive sort use
357 strcoll() if it's case insensitive for ASCII and g_strcasecmp()
360 2001-08-11 Pavel Roskin <proski@gnu.org>
362 * achown.c (chown_advanced_cmd): Remove dead code.
363 * chown.c (chown_cmd): Likewise.
364 * chmod.c (chmod_cmd): Likewise.
366 * charsets.c (load_codepages_list): Use concat_dir_and_file().
368 * mad.h: Disable glib support - it doesn't work properly.
370 2001-08-07 Pavel Roskin <proski@gnu.org>
372 * view.c: Warning fixes. Include "cmd.h". Rename help_cmd()
374 (view_handle_key) [HAVE_X]: Disable '!' and Ctrl-O.
376 * main.c (do_execute): Don't show prompt if the command is empty
377 and the subshell is not running.
378 * view.c (view_handle_key): Add support for Ctrl-O in the viewer.
379 Suggested by Walery Studennikov <despair@sama.ru>
381 2001-08-06 Pavel Roskin <proski@gnu.org>
383 * boxes.c (display_init): Associate correct help topic.
384 (sort_box): Likewise.
385 (set_panel_filter): Likewise.
386 * option.c (init_configure): Likewise.
387 * menu.c (menubar_handle_key): Show help dependent on the active
390 2001-08-06 Andrew V. Samoilov <kai@cmail.ru>
392 * mad.c (mad_strdup): Return NULL if NULL is passed.
394 * view.c (block_search): Return the position where the block was
395 found as declared in comment.
396 (hex_search): Don't increase pos, block_search returns now right
399 2001-08-03 Andrew V. Samoilov <kai@cmail.ru>
401 * mad.[ch] (mad_check): Declare file parameter const.
402 (mad_alloc): Likewise. Don't truncate it.
403 (mad_abort): Declare message and file parameters const.
405 2001-08-03 Pavel Roskin <proski@gnu.org>
407 * file.c: Warning fix. Include global.h before other local
409 * filegui.c: Likewise.
410 (fmd_init_i18n) [!ENABLE_NLS]: Completely disable.
411 * i18n.h [!ENABLE_NLS]: Warning fix.
412 * learn.c (init_learn): Move do_refresh() call immediately
413 before cleate_dlg(). Warning fix.
415 2001-07-31 Pavel Roskin <proski@gnu.org>
417 * Makefile.in: "install" now depends on "all".
418 Reported by Walery Studennikov <despair@sama.ru>
420 2001-07-31 Andrew V. Samoilov <kai@cmail.ru>
422 * util.c [!HAVE_X] (is_printable): Don't duplicate declarations from
424 (load_file): Use fopen and fstat to prevent race conditions.
425 (size_trunc): Make suffix const array.
426 (strip_password): Make prefixes const array.
427 (file_date): Make fmt auto variable.
428 * color.c (color_table): Make constant array.
429 * widget.[ch] (label_new): Make text parameter const.
430 * menu.c (create_menu): Don't localize name, it is always done.
431 * find.c (find_parameters): Fix hotkeys duplication.
432 * complete.c (command_completion_function): Don't stop $PATH
433 processing on empty entry. Interpret it as current directory.
435 2001-07-31 Pavel Roskin <proski@gnu.org>
437 * charsets.c: Warning fixes.
438 * charsets.h: Likewise.
439 * selcodepage.c: Likewise.
440 * selcodepage.h: Likewise.
442 * Makefile.in: Move most logic around gindex.pl into gindex.pl.
443 Don't use maintainer-only rules since mc.hlp won't be removed
444 now if perl is missing or gindex.pl fails.
445 * gindex.pl: Run man2hlp internally. Use files given as
446 arguments instead of stdin and stdout.
448 2001-07-30 Pavel Roskin <proski@gnu.org>
450 * mad.c: Don't use g_calloc - it's missing in glib 1.2.x.
451 * mad.h: Likewise. Use mad_alloc0() to emulate calloc().
453 * view.h: Simplify, respect WANT_WIDGETS setting.
455 2001-07-28 Pavel Roskin <proski@gnu.org>
457 * view.c (view_ok_to_quit): Make global - it's needed for GMC.
458 * view.h: Declare view_ok_to_quit().
460 2001-07-27 Pavel Roskin <proski@gnu.org>
462 * util.c [!USE_VFS] (get_current_wd): Resurrect, this time using
465 * background.h: Remove WITH_BACKGROUND, it's now in extraconf.h.
466 * background.c: Use WITH_BACKGROUND instead of USE_NETCODE.
468 * util.c (mc_mkstemps): Don't prepend $TMPDIR if prefix contains
471 2001-07-26 Pavel Roskin <proski@gnu.org>
473 * cmd.c (do_link): Append filename to the default symlink
474 target. Don't add path separator if there is no listing on
475 the other panel. Avoid using fixed size buffers.
476 From Max Schedriviy <max@tavrida.net>
478 * main.c [HAVE_X]: Disable eight_bit_clean and full_eight_bits.
479 * util.c (is_printable) [HAVE_X]: Simplify.
481 2001-07-25 Pavel Roskin <proski@gnu.org>
483 * cmd.c (do_link): Simplify. Don't silently exit if the source
484 file is not regular - let user see the error if any.
486 2001-07-24 Pavel Roskin <proski@gnu.org>
488 * achown.c (ch_perm): Make constant array.
489 (chown_info_update): Use set_perm_by_flags(), not set_perm().
492 * achown.c: Make all global variables static. Fix help.
493 * complete.c: Likewise.
494 * chmod.c: Make all global variables static.
496 * chmod.h: Remove all variables.
498 2001-07-23 Pavel Roskin <proski@gnu.org>
500 * user.c: Eliminate static variable s_editwidget. Pass
501 edit_widget as argument. All callers changed.
502 (expand_format): Fix expansion of %n and %b for the editor.
503 * util.c: Remove dead code.
505 * setup.c (load_keys_from_section): Give terminal-specific
506 settings preference over settings from [terminal:general].
508 2001-07-22 Pavel Roskin <proski@gnu.org>
510 * setup.c (load_keys_from_section): Give ~/.mc/ini preference
513 2001-07-20 Pavel Roskin <proski@gnu.org>
515 * dlg.c: Remove dependency on definitions in gconf.h.
517 * widget.c (input_callback) [HAVE_X]: Disable Ctrl-q - it
520 * file.c (panel_get_file): Use g_assert_not_reached().
521 * key.c (xgetch_second): Make static.
523 2001-07-19 Pavel Roskin <proski@gnu.org>
525 * user.c (check_format_view): Match "unform" instead of
526 "unformated" because some users may spell this word correctly.
528 2001-07-17 Pavel Roskin <proski@gnu.org>
530 * util.c (get_current_wd): Remove. It's obsoleted by
531 g_get_current_dir() from glib.
533 * ext.c (exec_extension): Add the `rm' command to the end of
534 temporary scripts so that they erase themselves.
536 * util.c (mc_mkstemps): Always use "unsigned long" for enthropy,
537 since gcc-2.7.2.1 on SunOS doesn't understand __extension__ and
538 checking for "long long" is not worth the trouble.
539 Reported by David Martin <dmartina@excite.es>
541 2001-07-16 Pavel Roskin <proski@gnu.org>
543 * utilunix.c (mc_doublepopen): Use _exit() instead of exit()
544 and don't close any unrelated file descriptors. Explicitly
547 2001-07-15 Pavel Roskin <proski@gnu.org>
549 * mad.h: Include stdio.h to prevent redefining mad_tempnam().
550 * main.c [HAVE_X && HAVE_MAD]: Don't call done_key().
552 * dlg.h: Remove declarations of non-existent functions.
553 [HAVE_X]: Disable color constants - they shouldn't be used.
555 * boxes.c [WITH_SMBFS] (vfs_smb_get_authinfo): Copied from
556 vfs/smbfs.c, function authinfo_get_authinfo_from_user().
558 * cmd.c [HAVE_X]: Disable source routing dialog and panel
560 * main.c (ctl_x_map): Simplify preprocessor directives.
562 2001-07-14 Pavel Roskin <proski@gnu.org>
564 * screen.c (panel_keymap) [HAVE_X]: Disable Alt-H - it's not
565 implemented properly for GNOME.
566 * main.c (directory_history_list) [HAVE_X]: Disable.
568 * panelize.c [HAVE_X]: Disable unused code.
570 * main.c [HAVE_X]: Disable Ctrl-X sequences.
572 * find.c: Remove code unused in the text edition.
574 * main.c [HAVE_X]: Eliminate setup_post() and partly done_mc().
576 * utilunix.c (uid_cache): Make static.
577 (gid_cache): Likewise.
578 (init_uid_gid_cache): Remove.
579 * main.c (setup_post): Don't call init_uid_gid_cache().
581 * main.c (default_map) [HAVE_X]: Disable Alt-T.
582 * cmd.c [HAVE_X]: Eliminate set_basic_panel_listing_to() and
583 toggle_listing_cmd().
585 2001-07-13 Pavel Roskin <proski@gnu.org>
587 * utilunix.c (canonicalize_pathname): Don't handle PATH_SEP
588 after backslash in a special way.
590 2001-07-12 Pavel Roskin <proski@gnu.org>
592 * subshell.c (init_subshell): Run "set echo_style=both" at
593 startup to ensure that echo in tcsh understands octal numbers.
594 Reported by Francis Kwok <francis.kwok@alcatel.com>
596 * Makefile.in (OURLIBS): Merge with ...
597 (LIBS): ... this. Add @LIBICONV@.
598 Reported by Libor Motyèka <l_motycka@ortex.cz>
600 * subshell.c (subshell_name_quote): New function. Quote all
601 characters as octals, use command substitution.
602 (do_subshell_chdir): Use subshell_name_quote(). Don't change
603 terminal settings when the quoted path is sent to the shell -
606 2001-07-12 Andrew V. Samoilov <kai@cmail.ru>
608 * main.c: Eliminate iconify_on_exec.
609 [!HAVE_GNOME]: Eliminate nowindows, nodesktop, twopanel,
610 display_linksdir and cmdline_geometry.
611 (sigchld_handler_no_subshell): Comment fixes.
612 (midnight_callback): Likewise.
613 (print_mc_usage): Use fputs, not fprintf.
614 (print_color_usage): Likewise.
615 (argument_table): Assign 'r' with force_subshell_execution and 'U'
617 (process_args): Don't deal with 'r', 'U' and 'X' options.
618 (setup_mc) [HAVE_GNOME]: Eliminate more code.
620 setup.c (options): Eliminate iconify_on_exec.
622 2001-07-10 Andrew V. Samoilov <kai@cmail.ru>
624 * view.c (hex_search): Release buffer after use.
626 2001-07-09 Pavel Roskin <proski@gnu.org>
628 * view.c (hex_search): Reimplement parser using sscanf. Add
629 support for decimal and octal numbers. Add error reporting.
630 Allocate buffer dynamically.
632 * hotlist.c: Add comments to avoid confusion between
633 done_hotlist() and hotlist_done().
634 (hotlist_done): Set l_hotlist to NULL.
635 (add2hotlist): Load hotlist if it's neither loaded nor loading.
636 This fixes Ctrl-x h. Fix compiler warning.
638 * hotlist.c: Make more variables and functions static.
640 2001-07-08 Pavel Roskin <proski@gnu.org>
642 * ext.c (exec_extension) [HAVE_X]: Free file_name. Add comment
643 explaining why it cannot be unlinked there.
645 2001-07-06 Pavel Roskin <proski@gnu.org>
647 * ext.c (exec_extension): Unlink temporary file earlier if it's
648 not going to be used.
651 * Makefile.in: Use additional quotes to preserve @prefix@ when
652 Makefile is generated.
654 * Makefile.in: Don't use SEDCMD2, use sed.
656 * cons.saver.c: New variable console_minor. Eliminate variables
658 (check_file): Set console_minor to the minor device number of
659 the console. Disallow /dev/tty0.
660 (detect_console): Don't parse tty_name, instead make sure that
661 it corresponds to console_minor. Check console first. Fallback
662 to /dev/vcc/a* if /dev/vcsa* cannot be opened.
663 (save_console): Use console_minor.
664 (restore_console): Likewise.
666 * cons.saver.c (check_file): Eliminate using text messages to
667 indicate errors. Improve debug messages.
668 (detect_console): Likewise.
669 (main): Adjust call to detect_console.
671 * main.c (sigchld_handler_no_subshell): Don't restart cons.saver
673 * subshell.c (sigchld_handler): Likewise.
675 2001-07-05 Pavel Roskin <proski@gnu.org>
677 * main.c (midnight_callback): Don't handle any events except
678 Ctrl-x combinations on DLG_KEY event if the menu is active.
680 * main.c (load_prompt): Don't change prompt if midnight_dlg is
681 not the current dialog.
683 2001-06-28 Pavel Roskin <proski@gnu.org>
685 * util.c (size_trunc_len): New function - print file size to
686 a buffer of limited length.
687 * util.h: Declare size_trunc_len().
688 * screen.c (string_file_size): Use size_trunc_len().
690 2001-06-26 Pavel Roskin <proski@gnu.org>
693 * Makefile.in (SRCS): Remove xslint.c.
695 2001-06-25 Pavel Roskin <proski@gnu.org>
697 * key.c (ctrl_pressed): Don't limit functionality to Linux.
698 * screen.c (prev_page_key): Don't require console_flag to be set
699 to use ctrl_pressed(), only require that HAVE_X is undefined.
700 (next_page_key): Likewise.
701 * widget.c (key_left): Don't limit functionality to Linux.
702 (key_right): Likewise.
704 * main.h: Use "ifdef HAVE_GNOME", not "if HAVE_GNOME". Fix the
705 order of conditionals and put comments on endifs.
707 2001-06-25 Andrew V. Samoilov <sav@bcs.zp.ua>
709 * view.c [HAVE_CHARSET]: Include selcodepage.h.
710 (view_new): Use g_new0.
711 (ruler): Make static.
713 * complete.c (filename_completion_function): Clean it up.
714 (command_completion_function): Make words, bash_reserved and
715 bash_builtins const, use concat_dir_and_file.
716 (fetch_hosts): Fix typo, style fixes.
718 2001-06-23 Pavel Roskin <proski@gnu.org>
720 * mem.h: Undefine bcopy(), bcmp() and bzero() before redefining
723 2001-06-22 Pavel Roskin <proski@gnu.org>
725 * ext.c (exec_extension) [HAVE_X]: Disable console handling.
727 * cons.handler.c: Reorganize includes. Fix warnings on BSD.
728 * rxvt.c (rxvt_extensions): Make static.
729 * main.c (sigchld_handler_no_subshell) [!__linux__]: Don't try
730 to restart cons.saver.
731 * subshell.c (sigchld_handler) [!__linux__]: Likewise.
733 * fsusage.c: Use HAVE_INFOMOUNT.
734 * mountlist.c: Likewise. Fix condition when mount_list is
736 (fstype_to_string): Rename mount_list to mlist to avoid
737 confusion with the file-scoped static variable.
739 * cmd.c [HAVE_X]: Disable more code. Reorder includes.
741 2001-06-20 Pavel Roskin <proski@gnu.org>
743 * main.c: Remove MenuBarEmpty. From Andrew V. Samoilov.
745 * wtools.c [HAVE_X]: Disable quick dialog routines.
747 * setup.c (save_setup) [HAVE_X]: Don't save the [Dirs] section.
748 (load_setup) [HAVE_X]: Don't load the [Dirs] section.
749 * main.c [HAVE_X]: Disable other_dir and boot_current_is_left.
752 2001-06-19 Pavel Roskin <proski@gnu.org>
754 * background.h: Correct condition when WITH_BACKGROUND is
756 * fsusage.c: Rearrange the includes. Define HAVE_QNX_MOUNT
757 for old QNX and use it instead of __QNX__.
758 * mountlist.c: Likewise.
759 * keyxdef.c: Define HAVE_QNX_KEYS for old QNX and use it instead
762 2001-06-18 Pavel Roskin <proski@gnu.org>
764 * main.c [HAVE_X]: Disable change_panel(),
765 copy_current_readlink() and copy_other_readlink().
766 Don't do anything with cmdline and command_prompt.
767 * screen.c [HAVE_X]: Disable panel_event(), chdir_other_panel()
768 and chdir_to_readlink(). Adjust all callers.
769 (panel_key) [HAVE_X]: Don't use command_prompt - always
770 start search on alphanumeric keys.
771 * setup.c [HAVE_X]: Disable save_layout(), load_layout(), struct
772 layout. Adjust all dependencies.
774 * utilunix.c (init_my_statfs): Move this ...
775 * util.c (my_statfs): ... and this ...
776 * mountlist.c: ... here.
777 * util.h: Move mountlist-related declarations ...
778 * mountlist.h: ... here.
779 * info.c: Include mountlist.h.
781 2001-06-17 David Martin <dmartina@excite.es>
783 * hotlist.c (init_movelist): Don't assume English word ordering
786 2001-06-16 Andrew V. Samoilov <sav@bcs.zp.ua>
788 * wtools.c (message): Possible buffer overflow fixed.
789 (query_callback) [HAVE_X]: Disable more code.
790 (listbox_refresh) [!HAVE_X]: Became a macro.
791 * hotlist.c (init_i18n_stuff): Mark cancel_but for translation.
793 * tree.c (tree_copy, tree_move): Possible memory leaking fixed.
794 (tree_keymap): Constified.
796 2001-06-15 Pavel Roskin <proski@gnu.org>
798 * panelize.c: Define DIR_H_INCLUDE_HANDLE_DIRENT earlier, since
799 the GNOME edition includes dir.h from other headers.
801 * background.c: Include "x.h".
802 * panelize.c: Likewise.
803 * treestore.c: Likewise.
806 * command.c: Reorder includes. Include "x.h".
807 * complete.c: Likewise.
809 * user.h: Declare user_menu_cmd() inconditionally.
810 * i18n.h [GAVE_GNOME]: Remove code that is now in x.h.
812 * tty.h [HAVE_X]: Define beep() to gdk_beep().
814 2001-06-14 Pavel Roskin <proski@gnu.org>
816 * xtty.h: Remove, move contents ...
818 [HAVE_X]: Define attrset(), mc_refresh(), enable_interrupt_key()
819 and disable_interrupt_key(). Don't declare mc_refresh().
820 * view.c: Use braces around widget_move() since it's empty in
822 * xslint.c: Eliminate attrset() and mc_refresh().
823 * Makefile.in: Remove xtty.h.
825 * cons.handler.c (handle_console): Remove useless default.
826 * ext.c (regex_command): Initialize include_target_len.
827 * find.c [HAVE_GNOME]: Eliminate untyped declarations.
828 * fsusage.c: Remove untyped declaration of statfs().
829 [_AIX && _I386]: Rename statfs to aix_statfs and move
830 it before get_fs_usage(). Define statfs to aix_statfs.
832 * achown.c: Eliminate untyped declarations.
834 * cons.saver.c: Likewise.
835 * hotlist.c: Likewise.
836 * panelize.c: Likewise.
838 * main.c: Likewise. Make undeclared functions static.
839 * treestore.c: Make undeclared functions static.
841 * widget.c: Likewise.
843 * main.h: Fix prototype of exec_shell.
844 * tree.c: Make all functions static when possible.
845 * tree.h: Changes for the above.
847 * text.c [HAVE_X]: Remove useless #error.
848 * cons.saver.c: Indent #error to hide it from old compilers.
850 2001-06-13 Pavel Roskin <proski@gnu.org>
852 * screen.c (display_mini_info): Avoid nested i18n calls.
853 (parse_panel_size): Warning fix.
854 * user.c [HAVE_X]: Warning fix.
855 (check_format_var): Avoid nested i18n calls. Improve messages.
857 * screen.c (user_file_menu_cmd) [HAVE_X]: Disable.
858 (panel_callback) [HAVE_X]: Don't define labels, they are unused.
859 * user.c [HAVE_X]: Disable all user menu code.
861 * color.c (color_table): Make static. Only use in text edition.
862 * xtty.h: Remove unused definitions.
864 * slint.c (slang_init): Check screen dimensions and exit if they
865 are abnormal. This may happen due to a S-Lang bug when the TERM
866 is set to a value not listed in termcap or terminfo.
868 2001-06-12 Pavel Roskin <proski@gnu.org>
870 * boxes.c [HAVE_CHARSET]: Localize more strings. Lay out the
871 encoding dialog using the translated title length. Remove
872 useless preprocessor directives.
873 From David Martin <dmartina@excite.es>
875 2001-06-11 Andrew V. Samoilov <sav@bcs.zp.ua>
877 * dlg.[ch] (x_set_dialog_title): title constified.
878 (create_dlg): Use g_new0 instead of g_new.
880 * selcodepage.c (do_select_codepage): Fix compilation.
882 2001-06-09 Pavel Roskin <proski@gnu.org>
884 * util.c (load_mc_home_file): New function. Load file from
885 mc_home, but try localized version of that file first.
886 * util.h: Declare load_mc_home_file().
887 * help.c (interactive_display): Use load_mc_home_file(). If the
888 first argument is NULL assume mc.hlp.
889 * dlg.c (dialog_handle_key): Use interactive_display() without
890 specifying the help file.
891 * tree.c (tree_copy): Likewise.
892 * cmd.c (help_cmd): Likewise.
893 (get_random_hint): Use load_mc_home_file().
894 From Andrew V. Samoilov.
896 2001-06-07 Andrew V. Samoilov <sav@bcs.zp.ua>
898 * charsets.h: Define CHARSETS_INDEX without leading LIBDIR.
900 * charsets.c (translate_character): Warning fix.
901 (init_translation_table): Don't deal with printable.
902 This one is initialized by init_printable_table ().
903 (load_codepages_list): Use CHARSETS_INDEX.
905 * selcodepage.c (do_select_codepage): Messages marked for i18n.
906 * setup.c (load_setup): Eliminate errbuf. Fix error message.
908 2001-06-07 Pavel Roskin <proski@gnu.org>
910 * setup.c (load_setup): Call init_printable_table() and
911 init_translation_table() regardless of other failures.
913 * charsets.c (get_codepage_index): Warning fix.
914 (init_printable_table): New function.
915 * charsets.h: Declare init_printable_table().
916 * setup.c (load_setup): Uncomment init_printable_table().
918 * cons.saver.c: Make all functions except main() static.
919 * mfmt.c (omain): Remove, it's unused.
921 2001-06-06 Pavel Roskin <proski@gnu.org>
923 * main.c (done_mc) [HAVE_X]: Don't use xterm_flag.
924 (midnight_callback) [HAVE_X]: Don't handle any keys except
926 Remove useless preprocessor conditionals.
927 * win.c [HAVE_X]: Disable unused functions.
929 * file.c: Add comments after every endif.
930 [HAVE_GNOME] [!WITH_BACKGROUND]: Fix compilation.
932 2001-06-06 Andrew V. Samoilov <sav@bcs.zp.ua>
934 * main.c [HAVE_CHARSET]: Remove source_codepage and display_codepage.
935 They are declared in selcodepage.c.
936 * setup.c [USE_VFS]: Remove declarations for variables which are
937 declared in vfs/ftpfs.c.
938 (load_setup) [HAVE_CHARSET]: init_printable_table commented
939 out to enable compilation. Error strings tagged for translation.
940 (init_setup): Optimized.
941 * boxes.c (sel_charset_button): Eliminate C++ comment.
942 (new_display_codepage): Made static.
943 (display_bits_box): Use "%s" for plain string in message.
945 2001-06-05 Pavel Roskin <proski@gnu.org>
947 * boxes.c [HAVE_CHARSET]: New charset selection dialog.
948 * main.c [HAVE_CHARSET]: Don't use eight_bit_clean and
949 full_eight_bits. Use source_codepage and display_codepage to
950 deduce the terminal 8-bitness.
951 * main.h [HAVE_CHARSET]: Change to match main.c.
952 * setup.c [HAVE_CHARSET]: Implement saving and loading charset
954 * util.c (is_printable) [HAVE_CHARSET]: Use charset settings.
955 * view.c [HAVE_CHARSET]: Implement charset support.
956 From Walery Studennikov <hqsoftware@mail.ru>.
958 * selcodepage.c (do_select_codepage): New function.
959 * selcodepage.h: Declare it.
960 From Walery Studennikov <hqsoftware@mail.ru>.
962 * mfmt.c (omain): Warning fix.
964 * key.c [HAVE_TEXTMODE_X11_SUPPORT]: Rename `display' to
965 `x11_display' and `w' to `x11_window'. Make them static.
966 (init_textmode_x11_support): Include into init_key().
967 (done_textmode_x11_support): Include into done_key().
968 (k_dispose): Make static.
969 (s_dispose): Likewise.
970 * key.h: Remove init_textmode_x11_support() and
971 done_textmode_x11_support().
972 * main.c: Don't call init_textmode_x11_support() and
973 done_textmode_x11_support().
975 * achown.c: Make global variables static if possible. Remove now
976 useless preprocessor directives, since this file is now used in
977 the text edition only.
978 * boxes.c: Remove useless ifdefs.
979 [USE_VFS]: Don't undef USE_NETCODE - it's done in extraconf.h.
980 * cmd.c [USE_VFS]: Don't undef USE_NETCODE.
981 * chmod.c: Remove useless ifdefs.
982 * filegui.c: Likewise.
983 * hotlist.c: Likewise.
985 * layout.c: Likewise.
986 * listmode.c: Likewise.
987 * option.c: Likewise.
988 * subshell.c: Likewise.
989 * help.c: Remove useless ifdefs. Make global variables static if
994 2001-06-04 Andrew V. Samoilov <sav@bcs.zp.ua>
996 * charsets.c (load_codepages_list): Lines in mc.charset beginning
997 with a # are comments. Use "default character_set_name" in mc.charset
998 to set default codepage for your system.
999 (xstrncpy): Eliminate.
1001 2001-06-04 Pavel Roskin <proski@gnu.org>
1003 * cmd.c (edit_symlink_cmd) [!HAVE_GNOME]: Warn if the current
1004 selection is not a symbolic link.
1006 2001-06-02 Pavel Roskin <proski@gnu.org>
1008 * cmd.c (free_vfs_now) [HAVE_GNOME]: Eliminate.
1009 (reselect_vfs) [HAVE_GNOME]: Likewise.
1010 * main.c (ctl_x_map) [HAVE_GNOME]: Disable add2hotlist_cmd.
1011 (done_mc) [HAVE_X]: Don't call save_hotlist().
1012 * setup.c (save_setup) [HAVE_X]: Likewise.
1013 (done_setup) [HAVE_X]: Don't call done_hotlist().
1015 2001-06-01 Pavel Roskin <proski@gnu.org>
1017 * hotlist.c [HAVE_X]: Don't use ctrl_pressed().
1018 * widget.c [HAVE_X]: Likewise.
1019 * main.c [HAVE_X]: Likewise. Don't call init_key() and
1020 init_key_input_fd().
1021 * setup.c [HAVE_X]: Remove some variables that make no sence
1022 for the GNOME edition. Eliminate save_panel_types().
1023 * view.c [!PORT_WANTS_VIEW]: Eliminate view_mode_callback().
1025 * view.c [HAVE_X]: Define is_idle() to 1. Warning fix.
1027 * file.c (copy_file_file): Initialize src_uid, src_gid, src_mode
1028 and file_size to avoid a warning.
1030 2001-05-31 Pavel Roskin <proski@gnu.org>
1032 * charsets.c: Include config.h before everything else.
1033 * selcodepage.c: Likewise.
1035 * textconf.c (features): Use longer strings to avoid enforcing
1036 english word ordering on the translations. Capitalize sentences.
1037 From Walery Studennikov: Indicate charset support.
1038 (version): Use fputs, not fprintf.
1040 * Makefile.in: Add charsets.c, charsets.h, selcodepage.c and
1041 selcodepage.h. Compile them if the charset support is enabled.
1042 Distribute them always.
1044 2001-05-30 Pavel Roskin <proski@gnu.org>
1046 * charsets.c: New file for charset conversion support.
1047 From Walery Studennikov.
1048 * charsets.h: Likewise.
1049 * selcodepage.c: Likewise.
1050 * selcodepage.h: Likewise.
1052 * layout.c (init_curses) [!HAVE_SLANG]: Set ESCDELAY to 0 if
1053 possible to prevent ncurses from waiting after escape.
1055 2001-05-29 Pavel Roskin <proski@gnu.org>
1057 * cmd.c (quick_cd_cmd) [HAVE_GNOME]: Disable.
1058 * main.c (sort_cmd) [HAVE_GNOME]: Likewise.
1059 (ctl_x_map) [HAVE_GNOME]: Disable "Ctrl-x j" - background jobs.
1061 * color.c (init_colors) [HAVE_SLANG]: Use "default" instead of
1062 NULL as color names - this works even if COLORFGBG is unset.
1063 Don't check HAS_DIRECT_COLOR_ACCESS - it's now meaningless.
1065 * color.h: Define DEFAULT_COLOR_INDEX and DEFAULT_COLOR in the
1066 same way regardless of HAVE_SLANG.
1067 * color.c (init_colors) [USE_NCURSES]: Initialize the default
1070 * subshell.c (pty_open_master) [!HAVE_SCO && HAVE_GRANTPT]:
1071 Don't try to close a file that wasn't opened.
1073 * xslint.c: Remove slang_init() and FIXME in the comment.
1074 * main.c (main) [!HAVE_SLANG]: Don't call slang_init().
1076 2001-05-28 Pavel Roskin <proski@gnu.org>
1078 * myslang.h: Use HAVE_SLANG_SLANG_H instead of non-standard
1079 SLANG_H_INSIDE_SLANG_DIR.
1081 * xslint.c: Remove unused functions.
1083 * color.c (init_colors) [HAVE_SLANG]: Use SLtt_set_color() to
1084 associate the default colors with DEFAULT_COLOR_INDEX. The old
1085 code would unset alternative charset without making S-Lang aware
1087 Thanks to John E. Davis <davis@space.mit.edu>
1088 * widget.c (update_input) [HAVE_SLANG]: Revert last change - it
1091 2001-05-28 Andrew V. Samoilov <sav@bcs.zp.ua>
1093 * main.c: Correct some comments after #endif
1094 (shell): Remove comment and #ifdef around shell variable.
1095 (process_args) [HAVE_SUBSHELL_SUPPORT]: All related args enclosed
1096 between one #ifdef ... #endif pair.
1097 (process_args): smbfs_set_debug () takes a debug level as argument,
1100 2001-05-27 Pavel Roskin <proski@gnu.org>
1102 * main.c (OS_Setup) [!HAVE_X]: Exit immediately if TERM
1103 environment variable is unset or empty.
1105 2001-05-25 Pavel Roskin <proski@gnu.org>
1107 * cmd.c: Clean up useless preprocessor directives.
1108 (symlink_cmd): Warning fix.
1109 * dlg.c (dialog_handle_key) [HAVE_X]: Disable suspend on Ctrl-z.
1110 * main.c (do_suspend_cmd) [HAVE_GNOME]: Remove.
1111 (suspend_cmd) [HAVE_GNOME]: Likewise.
1113 2001-05-24 Pavel Roskin <proski@gnu.org>
1115 * widget.c (update_input) [HAVE_SLANG]: Work around a bug in
1116 SLang 1.x - set charset to alternative when printing spaces.
1118 2001-05-22 Pavel Roskin <proski@gnu.org>
1120 * ext.c (exec_extension): Use g_free() on the result of
1121 mc_mkstemps(). Don't free it if mc_mkstemps() fails - it's not
1123 * user.c (execute_menu_command): Likewise.
1124 * util.c (mc_mkstemps): Return NULL in the filename in the case
1125 of failure. Remove support for NULL as the first argument.
1126 From Andrew V. Samoilov.
1128 2001-05-21 Pavel Roskin <proski@gnu.org>
1130 * ext.c (exec_extension): Use mc_mkstemps().
1131 * user.c (execute_menu_command): Use mc_mkstemps().
1132 * util.c (mc_mkstemps): New function - safely create and
1133 open temporary file. Return the handle and the name.
1134 * util.h: Declarations for init_tmpdir() and mc_mkstemps().
1135 Define TMPDIR_DEFAULT and SCRIPT_SUFFIX.
1137 2001-05-18 Pavel Roskin <proski@gnu.org>
1139 * TODO: Remove Tk-related entries.
1140 * boxes.c [HAVE_TK]: Remove. Don't need INPUT_INDEX anymore.
1141 * screen.c [HAVE_TK]: Remove.
1142 (panel_event): Made static.
1143 * chmod.c [HAVE_TK]: Remove.
1144 * cmd.c [HAVE_TK]: Likewise.
1145 * help.c [HAVE_TK]: Likewise.
1146 * hotlist.c [HAVE_TK]: Likewise.
1147 * info.c [HAVE_TK]: Likewise.
1148 * view.c [HAVE_TK]: Likewise.
1149 * view.h [HAVE_TK]: Likewise.
1150 * widget.c [HAVE_TK]: Likewise.
1151 * wtools.c [HAVE_TK]: Likewise.
1153 * TODO: Remove XView-related entries.
1154 * menu.h [HAVE_XVIEW]: Remove all XView-related code.
1156 2001-05-17 Pavel Roskin <proski@gnu.org>
1158 * subshell.c (pty_open_master) [HAVE_SCO]: Fix ambigous `else'.
1159 [!HAVE_SCO && !HAVE_GRANTPT]: Likewise.
1161 2001-05-16 Pavel Roskin <proski@gnu.org>
1163 * subshell.c: Define _GNU_SOURCE to enable prototypes for
1164 allocating pseudo-terminals on GNU systems.
1166 * subshell.c (init_subshell_child): New function to initialize
1167 child process and run subshell. Code moved from ...
1168 (init_subshell): ... here.
1170 * subshell.c (init_subshell): Don't close pty_slave if is wasn't
1171 open. Initialize it with -1.
1173 2001-05-14 Pavel Roskin <proski@gnu.org>
1175 * main.c [HAVE_GNOME]: Disable more code.
1176 * cmd.c [HAVE_GNOME]: Likewise.
1178 * background.h: Omit definitions that require FileOpContext if
1179 fileopctx.h has not been included yet.
1181 * background.c (real_message_2s): Declare arguments "const" when
1183 (real_message_3s): Likewise.
1184 * wtools.c (message): Likewise.
1185 * background.h: Change declarations to match.
1186 * dialog.h: Likewise.
1188 * boxes.c [HAVE_GNOME]: Disable unused code.
1189 * find.c [HAVE_GNOME]: Likewise.
1190 * complete.c [HAVE_GNOME]: Likewise.
1191 * main.c [HAVE_GNOME]: Likewise.
1193 * screen.c (adjust_top_file): Enable only if it's used, i.e.
1194 when PORT_HAS_PAINT_FRAME in undefined.
1195 * wtools.c (listbox_refresh): Disable for HAVE_X, define to
1196 an empty macro instead.
1197 (listbox_callback): Call listbox_refresh() regardless of HAVE_X.
1198 (create_listbox_window): Likewise.
1200 * fsusage.c: Include stdlib.h for abort().
1201 * tree.c (tree_mkdir_cmd): Disable tree_mkdir_cmd() since it's
1203 * widget.c: Declare x_radio_toggle() with arguments.
1205 * util.h: Remove declarations of some functions defined in
1208 2001-05-14 Andrew V. Samoilov <sav@bcs.zp.ua>
1210 * background.c (real_message_1s, message_1s): third parameter is
1211 used by message () as printf pattern, so "%s" has to be added
1212 if plain string must be shown but printf conversion
1213 specification(s) may be there.
1214 * view.c (do_view_init): ditto
1215 * user.c (debug_out): ditto
1216 * utilunux.c (close_error_pipe, check_error_pipe): ditto
1218 * background.[ch], vfs/util-alone.c (message_1s): third parameter
1221 2001-04-27 Andrew V. Samoilov <sav@bcs.zp.ua>
1223 * find.c (search_content): Redo recent change without infinite loop ;-),
1224 egrep_path hardcoded to "egrep" as it is done in locate_egrep ()
1226 (locate_egrep): commented out
1228 (rotating_dash) [!HAVE_X]: moved into do_search to prevent warning
1230 2001-04-26 Pavel Roskin <proski@gnu.org>
1232 * find.c (search_content): Undo a recent change that caused an
1235 2001-04-24 Andrew V. Samoilov <sav@bcs.zp.ua>
1237 * view.c (get_line_at): previous newline is right condition
1238 for regexp '^' pattern also, fixed
1240 (search) [HAVE_GNOME]: gnome_message_box_new doesn't expand printf
1241 pattern, so g_strdup_printf used
1243 * find.c (find_parameters): don't use stat structure if mc_stat failed
1245 2001-04-17 Pavel Roskin <proski@gnu.org>
1247 * subshell.c (init_raw_mode): New function, separated from ...
1248 (invoke_subshell): ... this.
1249 (init_subshell): Initialize raw_mode here instead of delayng it
1250 until invoke_subshell(). Otherwise the current mode may have
1251 been changed by edition_pre_exec(), which caused Ctrl-O to be
1252 ignored on FreeBSD if a command has been run before switching
1255 2001-04-06 Pavel Roskin <proski@gnu.org>
1257 * chmod.c (stat_file): Allow chmod and chown on special files.
1259 * cons.handler.c: Include "global.h" for exit().
1261 * Makefile.in: Add dependencies between mc and static libraries
1264 2001-04-06 Andrew V. Samoilov <sav@bcs.zp.ua>
1266 * find.c (find_parameters): Add a checkbox for case insensitive
1268 (search_content): Pass `-i' to egrep for case insensitive
1271 2001-03-30 Andrew V. Samoilov <sav@bcs.zp.ua>
1273 * panel.h, screen.c (panel_new): panel_name constified to do gcc
1274 some more happy when gmc is compiled
1276 2001-03-18 Miguel de Icaza <miguel@ximian.com>
1278 * widget.c (forward_word, backward_word): Revert Timur's patch
1279 from last year which made the behaviour for advancing words not
1280 match the one in Emacs.
1282 2001-03-02 Pavel Roskin <proski@gnu.org>
1284 * key.c (mi_getch): Discard non-events (EV_NONE), but not
1287 2001-02-26 Pavel Roskin <proski@gnu.org>
1289 * cmd.c (edit_cmd) [HAVE_GNOME]: Use gmc_edit(). Don't use
1291 (ext_cmd) [HAVE_GNOME]: Don't compile for GNOME.
1292 * ext.c (regex_command) [HAVE_GNOME]: Likewise.
1293 * ext.h [HAVE_GNOME]: Don't define MC_USER_EXT and MC_LIB_EXT.
1295 * main.c (main): Don't call edit_init_file() - the editor should
1296 care about its files itself.
1298 2001-02-09 Pavel Roskin <proski@gnu.org>
1300 * main.c (main): Fix compilation error when configured without
1303 2001-02-07 Andrew V. Samoilov <sav@bcs.zp.ua>
1305 * main.c (main): Do not fork subshell for mcedit/mcview.
1307 2001-01-27 Pavel Roskin <proski@gnu.org>
1309 * cons.handler.c (handle_console): Check the result of ttyname().
1311 * main.c (handle_args): Exit if no arguments are given to mcview.
1312 [HAVE_GNOME]: Don't examine argv[0] - it's done separately.
1314 * dir.c: Respect HAVE_STRCOLL. Added a comment about strcoll().
1316 2001-01-26 Pablo Saratxaga <pablo@mandrakesoft.com>
1318 * file.c: moved a comment one line down so it becomes visible on the
1319 translators' po files. Also added gettext:no-c-format comments for
1320 a few strings with % in them that are not C format printf codes.
1322 2001-01-21 Andrew V. Samoilov <sav@bcs.zp.ua>
1324 * subshell.c (do_subshell_chdir): temporary patch to prevent command
1325 execution for directory names containing 0x03 (intr) 0x14.
1326 See http://www.securityfocus.com/vdb/?id=2016 for details.
1327 Subshell still can't chdir to such directories :(
1329 * subshell.[ch] (do_subshell_chdir): directory constified
1331 2001-01-17 Pavel Roskin <proski@gnu.org>
1333 * Makefile.in: Respect LDFLAGS when linking cons.saver.
1335 2000-11-20 Andrew V. Samoilov <sav@bcs.zp.ua>
1337 * view.c: Fixed long existed bugs in internal viewer. When search is
1338 doing in binary file it ignore skipped zero(es), so cursor is before
1339 searched expression and next search find the same string. Also regexp
1340 search could return wrong results for '^ ?' expressions.
1342 (get_line_at): skipped: new parameter for number of skipped zero(es)
1344 (search): new features of get_line_at used.
1346 2000-11-16 Andrew V. Samoilov <sav@bcs.zp.ua>
1348 * cons.saver.c (check_file): close fd on error. There was a bug, which
1349 allowed luser to write '\0' char to any symlinkable file in Linux
1350 system which don't ensure that fd's 0, 1, and 2 are open on startup
1351 of a SUID/SGID binary.
1352 Based on patch from bugtrack by Maurycy Prodeus <z33d@ETH-SECURITY.NET>.
1354 2000-11-14 Andrew V. Samoilov <sav@bcs.zp.ua>
1356 * layout.c (print_vfs_message): format string vulnerability fixed
1358 2000-11-03 Andrew V. Samoilov <sav@bcs.zp.ua>
1360 * main.c (CmdMenu): don't include edit_user_menu_cmd ()
1361 if USE_INTERNAL_EDIT is not defined
1362 (main): call edit_init_file () if USE_INTERNAL_EDIT is defined only
1363 (listmode_cmd): messages are localized
1365 2000-11-02 Pavel Roskin <proski@gnu.org>
1367 * layout.c [PORT_NEEDS_CHANGE_SCREEN_SIZE]: Declare
1368 low_level_change_screen_size().
1369 (flag_winch) [PORT_NEEDS_CHANGE_SCREEN_SIZE]: Call
1370 low_level_change_screen_size(). From Andrew V. Samoilov.
1372 2000-10-04 Pavel Roskin <proski@gnu.org>
1374 * user.c (expand_format): Fixed processing of "%s".
1376 2000-09-30 Pavel Roskin <proski@gnu.org>
1378 * Makefile.in: Added an explicit rule for man2hlp.
1380 2000-09-26 Pavel Roskin <proski@gnu.org>
1382 * listmode.c, listmode.h, main.c: Consistently using define
1383 LISTMODE_EDITOR to enable the experimental listmode editor.
1384 * main.c: Don't allow two adjacent separators in the Command
1387 2000-09-22 Pavel Roskin <proski@gnu.org>
1389 * fixhlp.c: Removed.
1390 * Makefile.in: Removed all references to fixhlp.c
1392 2000-09-14 Pavel Roskin <proski@gnu.org>
1394 * features.h: Joined with textconf.h to avoid name clash with
1396 * features.c: Renamed to ...
1397 * textconf.c: ... this
1398 * Makefile.in, cmd.c, main.c, text.c: necessary adjustments
1400 * Makefile.in: Don't make softlinks to the libraries
1402 2000-09-13 Pavel Roskin <proski@gnu.org>
1404 * Makefile.in: Only rebuild mc.hlp in the maintainer mode.
1406 2000-09-01 Pavel Roskin <proski@gnu.org>
1408 * fixhlp.c: fixed compile errors and warnings
1410 2000-08-30 Pavel Roskin <proski@gnu.org>
1412 * dirhist.c, dirhist.h: removed
1414 * features.h, keys.h, textconf.h, x.h: added protection against
1417 2000-08-23 Pavel Roskin <proski@gnu.org>
1419 * features.c: include <sys/param.h> to avoid a warning
1421 * main.c [HAVE_X]: print_mc_usage() and print_color_usage()
1423 version() moved to ...
1424 * features.inc: ... here, renamed to features.c
1425 * main.h: status_using_ncurses moved to ...
1426 * features.h: ... here
1427 * cmd.c, text.c: include "features.h"
1428 * cmd.h: include "panel.h"
1429 * Makefile.in: changed to use features.h and features.c
1431 2000-08-22 Pavel Roskin <proski@gnu.org>
1433 * main.c [HAVE_GNOME]: disable chmod and chown - they were
1434 broken and obsoleted by the "Properties" dialog
1436 * cmd.c [HAVE_X]: Removed dependency on status_using_ncurses
1438 * man2hlp.c: Removed undocumented feature - when converting
1439 to HTML some output would go to index.html instead of stdout
1441 2000-08-16 Pavel Roskin <proski@gnu.org>
1443 * gindex.pl: Enable warnings. Existing warnings fixed.
1445 * Makefile.in: mc.hlp now depends on man2hlp.c instead of
1446 man2hlp - this avoids some rebuilds of mc.hlp
1448 2000-08-15 Pavel Roskin <proski@gnu.org>
1450 * mc.hlp: removed. It's a derived file
1451 * Makefile.in: Fixed dependencies for $(srcdir)/mc.hlp
1452 Build $(srcdir)/mc.hlp but allow a failure (e.g. no perl)
1454 2000-08-11 Frederic L. W. Meunier <fredlwm@pervalidus.net>
1456 * Makefile.in: Don't compile mfmt, compile mcmfmt directly.
1458 2000-08-08 Andrew V. Samoilov <sav@bcs.zp.ua>
1460 * hotlist.c (done_hotlist): static tkn_buf, tkn_buf_length and
1461 tkn_length nullified after tkn_buf is freed to prevent crushes.
1463 (new_hotlist): became a macro
1465 * background.c (real_message_[123]s): title is really prepended
1466 by "Background process:" string now if mode == Background
1468 (background_attention): resstr NULLified to prevent warning
1470 2000-06-26 Andrew V. Samoilov <sav@bcs.zp.ua>
1472 * screen.c (display_mini_info): two different patterns are
1473 used now: for one file and for other cases
1475 2000-06-16 Pavel Machek <pavel@artax.karlin.mff.cuni.cz>
1477 * cons_saver: support linux with devfs, patch by pavenis@lanet.lv
1479 2000-06-14 Andrew V. Samoilov <sav@bcs.zp.ua>
1481 * panel.h, util.[ch] (struct WPanel, size_trunc, size_trunc_sep): size
1482 parameters and WPanel.total field became double, thus, total size
1483 of selected files/directories is shown in the mini status correctly
1484 when it exceeds 2 GB.
1486 2000-05-25 Andrew V. Samoilov <sav@bcs.zp.ua>
1488 * slint.c (init_pair): segfault fixed when mcedit -b called
1490 * user.c (check_format_var): error messages are localized
1492 (expand_format, user_menu_cmd): memory leaking for %e and %k macro
1493 fixed; segfault fixed when %m macro is used outside user_menu_cmd ()
1495 * ext.c (regex_command): memory leaking fixed when user extension
1498 (exec_extension): error message for changed mc.ext file format
1499 are localized -- does we really must be worry about mc 3.0 ?
1501 * widget.c (history_put): counter is initialized again
1503 2000-05-11 Valery Kornienkov <vlk@dimavb.st.simbirsk.su>
1505 * src/user.c: fix segfault when Shift-F4, Shift-F1, so when menu
1506 content condition y, macro %y
1508 2000-05-04 Valery Kornienkov <vlk@dimavb.st.simbirsk.su>
1510 * src/user.c: Add macro %k it is block file name
1511 Add macro %e it is error file name
1512 Add macro %i it is cursor column indent of spaces, only for edit
1513 Add macro %y, it is syntax of current file in editor, only for edit
1514 Add condition y, it is syntax pattern of current file in edit
1515 Add macro %x it is extension of current file
1516 Add macro %m it is current menu filename
1518 2000-05-04 Valery Kornienkov <vlk@dimavb.st.simbirsk.su>
1520 * gtkedit/editcmd.c: Modify External Formatter (was C indent formatter) .
1521 Autocreate a scripts in home, from templates /usr/lib/mc/edit.indent.rc,
1522 edit.ispell.rc, etc. Remove leading and trailing spaces into _(""),
1523 (the message of David H. Martin <dmartina@usa.net>)
1525 2000-05-05 Valery Kornienkov <vlk@dimavb.st.simbirsk.su>
1527 * src/user.c: Add condition (x filename) into mc.menu .
1528 for "Open next a free console" and like.
1530 2000-05-04 Valery Kornienkov <vlk@dimavb.st.simbirsk.su>
1532 * src/user.c: fix segfault in chunk_alloc of glibc, when into condition
1533 of .mnu we have quoted space. (~.mc/menu: + f \.\ test$).
1535 2000-05-04 Valery Kornienkov <vlk@dimavb.st.simbirsk.su>
1538 Add ability user edit menus: system: /usr/lib/mc/cedit.menu,
1539 * gtkedit/editmenu.c: home: ~/.cedit.menu, local: .cedit.menu
1540 Marked block is access now from an user edit menu
1541 Access ~/.cedit/cooledit.block for insert to cursor place from
1543 Created system cedit.menu
1545 2000-05-04 Valery Kornienkov <vlk@dimavb.st.simbirsk.su>
1547 * gtkedit/editdraw.c:
1548 Improved a status string of cool editor for best understand,
1549 and to add char,hex view.
1551 2000-04-17 Andrew V. Samoilov <sav@bcs.zp.ua>
1553 * widget.c: (history_put): profile is free()d if chmod failed,
1554 (input_map): added const qualifier
1555 * utilunix.c, util.h: (tilde_expand): added const qualifier
1556 * cmd.c: (nice_cd): i18n update,
1557 (source_routing): typo fixed, source is free()d after use
1558 * screen.c: i18n changes, (panel_keymap): added const qualifier
1559 * view.[ch]: (view, view_init, do_view_init): added const qualifier
1561 2000-04-15 Timur Bakeyev <mc@bat.ru>
1563 * dir.c (string_sortcomp): strcmp() replaced with strcoll() to make
1564 directory listing LOCALE sensitive. I assume, strcoll exists everywhere,
1567 2000-04-15 Timur Bakeyev <mc@bat.ru>
1569 * dlg.c: Commited at last patch, that fixes screwed up right panel in
1570 a long format. Occasionaly, all my colors problems also gone. All thanks
1571 to Norbert Warmuth <nwarmuth@privat.circular.de>, who tracked down the
1572 problem, blames to me and Federico :)
1574 2000-04-12 Timur Bakeyev <mc@bat.ru>
1576 * widget.c ([forward|backward]_word): Changed one more time - now it
1577 skips alpnums and THEN spaces+punct. That gives almost the same re-
1578 sults, but twice quicker. Hope, this will be accepted.
1580 2000-04-06 Timur Bakeyev <mc@bat.ru>
1582 * widget.c ([forward|backward]_word): Changed logic of moving - now,
1583 it skips only spaces+punct OR alnum. Reason to do it so - deleting lines
1584 like "lynx http://www.gnome.org", where "lynx http:" part was erased
1585 in one operation. That's nasty, IMHO. Made this a separate commit, so,
1586 if it seriously breaks compatability it's easy to revert it. Still hope,
1589 2000-04-06 Timur Bakeyev <mc@bat.ru>
1591 * file.c, widget.[ch]: Fixed long existing problems with filenames
1592 and input widgets, then char is greater than 128. They were processed
1593 incorrectly. As usual, char != unsigned char problem.
1595 2000-03-03 Björn Eriksson <mdeans@algonet.se>
1597 * Similar patches came from Andrew V. Samoilov <sav@bcs.zp.ua>.
1599 * mad.[ch]: Some functions wrongly by-passed mad_alloc*() (causing
1600 problems when later g_free()ed.
1602 * Added mad_strndup().
1604 * Repeated code collected in mad_fatal_error().
1606 * The gcc-extension/C99-standard variable argument macros (adding
1607 __FILE__, __LINE__ before ', ...') would be nice.
1609 * Alloc_idx_hint and code added, the mad code was way too slow for my
1610 poor computer. A hash-table would be nice.
1612 * (mad_strconcat, mad_strdup_vprintf): g_malloc and g_new are
1613 undefined at the top of mad.c, so mad_alloc must be used.
1615 2000-02-23 Norbert Warmuth <nwarmuth@privat.circular.de>
1617 * main.c (parse_control_file): add missing right parentheses
1619 * boxes.c: fix incorrect initialization of array of structure (gcc
1620 version 2.96 20000131 chokes on it).
1622 2000-02-18 Paul Sheer <psheer@obsidian.co.za>
1624 * gtkedit/*.[ch], edit.c et al: updates to reflect
1625 cooledit-3.13.0. See CVS commits and cooledit ChangeLog
1628 2000-02-10 Pavel Machek <pavel@artax.karlin.mff.cuni.cz>
1630 * setup.c (load_setup): remove duplicate loading of anonymous
1631 passwd by do_load_string(), it is doing by
1632 ftpfs_init_passwd. (Patch by sav@bcs.zp.ua)
1634 2000-02-04 "David H.Martin" <dmartina@usa.net>
1636 * src/widget.c (input_new): Change NULL to empty strings and avoid
1637 crashing when string functions are called.
1638 * src/boxes.c (configure_vfs): Remove local change to empty string.
1639 * src/setup.c (load setup): Load anonymous password
1641 2000-02-03 Andrew V. Samoilov <sav@bcs.zp.ua>
1643 * setup.c (load_setup): call ftpfs_init_passwd to avoid segfault
1645 2000-01-24 Andrew V. Samoilov <sav@bcs.zp.ua>
1647 * main.c (parse_control_file): add extra secutity checks for
1648 control file. It cannot be group/world writable;
1649 (ctl_x_map, default_map, argument_table): added const qualifier.
1651 * fixed segfault in print_mc_usage
1653 2000-01-24 Pavel Machek <pavel@artax.karlin.mff.cuni.cz>
1655 * cmd.c (nice_cd): disabled ability to go to home.
1657 2000-01-02 viro@math.psu.edu
1659 * src/subshell.c: Reason: in feed_subshell() we are trying to read
1660 from shell pty,check for retval==-1 && errno != EIO. In that case
1661 we flame and exit. Otherwise we are trying to write what we've
1662 read. Good luck doing it if we got errno==EIO, which is _normal_
1663 for situation when shell just died. Resulting write(1,foo,~0U) is
1664 somewhat excessively, erm, verbose.
1666 1999-12-21 Pavel Roskin <pavel_roskin@geocities.com>
1668 * src/main.c, src/view.c: #warning's replaced with FIXME's.
1669 They were not for users, but for developers
1671 1999-11-11 Pavel Machek <pavel@artax.karlin.mff.cuni.cz>
1673 * main.c, cmd.c: add possibility to free VFS now
1675 1999-11-03 Pavel Machek <pavel@artax.karlin.mff.cuni.cz>
1677 * layout.c: always display status line. It contains vital
1678 information for ftpfs
1680 1999-03-19 Pavel Machek <pavel@artax.karlin.mff.cuni.cz>
1682 * profile.c (str_translate_newline_dup): someone likes to pass
1683 NULL's around. Warn instead of segfault.
1685 1999-11-02 Miguel de Icaza <miguel@gnu.org>
1687 * main.c (OS_Setup): Do not warn if TERM is not set for the GNOME edition.
1689 1999-09-21 Federico Mena Quintero <federico@redhat.com>
1691 * dlg.c (dlg_broadcast_msg_to): Sigh. Put in a GrossHack(tm) to
1692 unfocus what will be a WInput when a panel is initialized.
1694 1999-09-21 Federico Mena Quintero <federico@redhat.com>
1696 * dlg.c (init_dlg): Walk the list of widgets only if it exists.
1697 (dlg_broadcast_msg_to): Use safer list-walking code for if someone
1698 inserts a widget inside the message broadcast.
1700 1999-09-20 Federico Mena Quintero <federico@redhat.com>
1702 The following is a patch from Volker Braun
1703 <volker.braun@physik.hu-berlin.de> to fix column resizing in the
1706 * setup.c (options): Declare the column width option values.
1707 (save_configure): Save the default user format.
1708 (load_setup): Load the default user format.
1710 * panel.h (WPanel): Added a field for the column widths.
1712 1999-09-19 Andrew V. Samoilov <sav@bcs.zp.ua>
1714 * user.c (check_patterns): char* is used instead of char [] in sizeof
1716 * util.c (string_perm): prefix named pipes by 'p' and not by `s'
1718 1999-09-19 Norbert Warmuth <nwarmuth@privat.circular.de>
1720 * mad.c, mad.h, util.c, util.h: Move mad-functions from util.[ch]
1723 * option.c: Include files reordered in order to make it compile with
1726 * mad.c (mad_init): New function. Initialize debug FILE pointer to
1727 stderr (moved to a function because not on every system stderr is
1729 (mad_set_debug): added const qualifier
1731 * main.c (main): call mad_init
1733 1999-09-14 Norbert Warmuth <nwarmuth@privat.circular.de>
1735 * widget.[ch] (input_new): added const qualifier
1737 * util.c (wipe_password): Check for NULL.
1739 1999-09-13 Federico Mena Quintero <federico@redhat.com>
1741 * treestore.c: Removed tree_store_destroy(), renamed
1742 tree_store_init() to tree_store_get().
1744 * tree.c (tree_destroy): Do not destroy the tree store.
1745 (tree_new): Get the tree store, do not initialize it.
1747 * treestore.c (tree_store_init): Do not set the linked list
1750 * panel.h (WPanel): Added a new field that indicates whether the
1751 user is dragging something over the tree.
1753 1999-08-31 Federico Mena Quintero <federico@redhat.com>
1755 * main.c: In the GNOME version, we want cd_symlinks to be FALSE.
1756 The VFS should never have to look at this variable, but alas, it
1757 does. BUGFIX: Red Hat Bugzilla #2344.
1759 * setup.c: Disable cd_symlinks in the GNOME version.
1761 1999-08-30 Norbert Warmuth <nwarmuth@privat.circular.de>
1763 * main.c (print_mc_usage): Print the bug reporting address.
1764 (main): Put prompt in a new line at termination.
1766 1999-08-27 Federico Mena Quintero <federico@redhat.com>
1768 * ext.c (quote_block): How did this ever work? People, if you
1769 realloc() things, don't keep pointers to stuff inside the original
1772 * screen.c (do_enter_on_file_entry): Pass in the full name to
1775 * dir.[ch] (if_link_is_exe): Take in the full name, not the directory
1778 1999-08-15 Norbert Warmuth <nwarmuth@privat.circular.de>
1780 * cmd.c (guess_message_value): New function. Determine locale used
1783 (get_random_hint): use guess_message_value
1785 1999-08-15 David Martin <dmartina@usa.net>
1787 * boxes.c: (symlink_dialog): Move dialog misaligned elements
1789 * cmd.c (get_random_hint): Look for localized hint files
1791 1999-08-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
1793 * ext.c: Added missing include file.
1795 1999-08-08 David Martin <dmartina@usa.net>
1797 * menu.c: (create_menu): Adjust "#ifdef ENABLE_NLS" so that menus
1798 get the right size even when NLS is disabled.
1800 1999-08-06 Norbert Warmuth <nwarmuth@privat.circular.de>
1802 * screen.c (string_file_[amc]time): These three functions use
1803 file_date which returns a pointer to a static buffer. In the
1804 Gnome edition this buffer has to be coppied to a static buffer
1805 which isn't used in the other two functions (Fix Bug #1766).
1807 * util.c, util.h: Moved some constants to util.h
1809 1999-08-04 Norbert Warmuth <nwarmuth@privat.circular.de>
1811 * widget.c (push_history): Add SMB Link to the list of input dialogs
1812 where urls are input without vfs prefix.
1814 Translate the titles of these input dialogs only once.
1816 Removed Gnome specific code because the Gnome edition doesn't use
1817 the input history any more.
1819 * util.c (strip_password): Add /#smb: to the list of urls which might
1820 be input with password.
1822 1999-08-03 Norbert Warmuth <nwarmuth@privat.circular.de>
1824 * poptalloca.h: New file with definitions for alloca. Note: alloca
1825 is defined as malloc on systems which fail to support alloca. Don't
1826 include this file if you frequently use alloca.
1828 * findme.c, popt*.c: include poptalloca.h
1830 * Makefile.in: added poptalloca.h
1832 * menu.c (create_menu): set minimum menu width to 20 characters as
1833 it used to be (this was part of davids patches but I haven't
1836 1999-08-01 David Martin <dmartina@usa.net>
1838 * menu.c (create_menu, menubar_drop_compute, menubar_paint_idx):
1839 Discount '&' for hotkeys when checking menu widths to avoid the
1841 Moved this accounting from the drawing to the creating function.
1843 * widget.c: Translate History box tittle.
1845 1999-07-21 Norbert Warmuth <nwarmuth@privat.circular.de>
1847 * popt.c, popt.h, poptconfig.c, popthelp.c, poptparse.c: updated
1848 to the version found in the popt module
1850 * features.inc: added report information for smbfs
1852 1999-06-01 Robert Brady <rwb197@ecs.soton.ac.uk>
1854 * file.c (move_dir_dir): Give an error when an attempt is made to
1855 move an empty directory into itself.
1857 1999-06-24 smil@linuxfan.com
1859 * view.c (view_update_bytes_per_line, display): show correctly the
1860 offset of the file (full 8 digit), display offset in bold colour
1862 (view_labels): use goto_addr instead of goto_line in hex mode
1864 (goto_addr): New function. Goto offset address in hex mode.
1866 * view.h: use unsigned long for hexedit cursor position in file
1868 1999-06-24 Norbert Warmuth <nwarmuth@privat.circular.de>
1870 * menu.c (menubar_execute): Now needs an additional do_refresh in order
1871 to make layout changes visible.
1873 1999-06-01 Robert Brady <rwb197@ecs.soton.ac.uk>
1875 * file.c (move_dir_dir): Give an error when an attempt is made to
1876 move an empty directory into itself.
1878 1999-06-22 Norbert Warmuth <nwarmuth@privat.circular.de>
1880 * cmd.c (quick_view_cmd): Change panel when the file we want to
1881 view isn't in the current panel (prevents a "file not found"
1884 * menu.c (menubar_execute): De-activate the menubar previous to
1885 invoking the callback. This is needed to make change_panel in
1886 quick_view_cmd work (the activated menubar doesn't allow unfocus,
1887 i.e. dlg_one_down|up don't change anything).
1889 * view.c (do_view_init): improved error handling w.r.t quick view
1890 (mc used to dump core when the file to view couldn't be opened).
1892 1999-06-22 David Martin <dmartina@usa.net>
1894 * view.c (display): added view_gotoxy's in order to make the gnome
1895 edition operational in hex mode.
1897 Fri Jun 18 11:29:56 1999 Norbert Warmuth <nwarmuth@privat.circular.de>
1899 * user.c (user_menu_cmd): Allow national characters as hotkeys.
1900 Don't dump core when the menu file contains only empty lines
1902 * view.c (search, block_search): Use the correct column for the
1903 percent display while searching.
1905 1999-06-11 Federico Mena Quintero <federico@nuclecu.unam.mx>
1907 * complete.c (complete_engine): Put an #ifndef HAVE_GNOME around
1908 the completion/query engine. Make the Gnome version just beep
1909 instead. We do not have the completion/query engine for Gtk.
1911 1999-06-09 Pavel Machek <pavel@artax.karlin.mff.cuni.cz>
1913 * cmd.c (configure_panel_listing): no more code duplication
1915 * screen.c (panel_new): no more code duplication
1916 (set_panel_formats): warn user when he gives bogus format, move
1917 checks into set_panel_formats
1919 1999-06-01 Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
1921 * util.c (is_printable): in GNOME all characters are printable.
1923 1999-05-31 Miguel de Icaza <miguel@nuclecu.unam.mx>
1925 * main.c (handle_args): Handle --desktop-linksdir without using X
1927 1999-05-29 Miguel de Icaza <miguel@nuclecu.unam.mx>
1929 * treestore.c (should_skip_directory): Add fix from Wayne Roberts
1930 to actually acknowledge the settings of mc.global.
1932 1999-05-24 Brandon S. Allbery <allbery@ece.cmu.edu>
1934 * subshell.c (pty_open_master): Added missing comma.p
1936 Mon May 17 07:37:12 1999 Norbert Warmuth <nwarmuth@privat.circular.de>
1938 * subshell.c (pty_open_master): use getpt () if available to open
1939 the master side of the pty. getpt () is a glibc extension and is
1940 needed when glibc 2.1.x is used with a (linux) kernel without unix98
1941 style ptys (if there is no /dev/ptmx getpt falls back to bsd style
1944 * filegui.c (check_progress_buttons): Don't update the Gpm mouse
1945 cursor when we check for events. It causes a flickering cursor on a
1946 different virtual console.
1948 1999-05-12 Pavel Machek <pavel@artax.karlin.mff.cuni.cz>
1950 * cons.saver.c (main): change cons.saver so it can be run without
1951 root privileges. It is well possible to run cons.saver with
1952 privileges only to /dev/vcsa: create new user and make vcsa's
1953 owned by that user instead of root.
1955 Distribution maintainers please take this text as idea of what you
1956 should do to make your system more secure.
1958 1999-05-05 Miguel de Icaza <miguel@nuclecu.unam.mx>
1960 * cmd.c (view_file_at_line): gmc_view never fails, so we handle
1963 1999-04-29 Federico Mena Quintero <federico@nuclecu.unam.mx>
1965 * chmod.c (chmod_cmd): Missing _ in _().
1966 (chmod_cmd): Added braces around nested if/else.
1968 * widget.c (is_in_input_map): Added braces around nested if/else.
1969 (listbox_remove_current): Likewise.
1971 * subshell.c (read_subshell_prompt): Likewise.
1973 * view.c (view_status): Likewise.
1975 Tue Apr 27 20:31:13 1999 Norbert Warmuth <nwarmuth@privat.circular.de>
1977 * util.c (strip_home_and_password): Don't split the path in the
1978 middle of a directory, e.g. "/home/bofh" will not be translated to
1979 "~h" (fixes the bug reported by Alex Fortuna <alex@rdc.ru>)
1981 1999-04-25 Sergei Ivanov <svivanov@pdmi.ras.ru>
1983 * find.c: The origin of the bug is in the function do_search (file
1984 find.c). It limits the number of subdirectories to scan by the
1985 number stat.st_nlink-2, or infinite if st_nlink<2. On tar vfs,
1986 st_nlink is always 1, so it should be the second case.
1988 But before doing stat, do_search does opendir. And opendir on tar
1989 vfs (vfs_s_opendir in vfs/direntry.c) increases the st_nlink value
1990 in the stat data! So mc_stat called after mc_opendir on tar vfs
1991 returns st_nlink==2 instead of 1. This is interpreted as if the
1992 directory had no subdirs, thus subdirs are not searched in.
1994 Changing the order of calls to mc_stat and mc_opendir fixes the
1997 1999-03-25 Miguel de Icaza <miguel@nuclecu.unam.mx>
1999 * setup.c (save_setup): Only save this if there is a current panel
2001 Wed Apr 21 21:47:15 1999 Norbert Warmuth <nwarmuth@privat.circular.de>
2003 * ext.c (exec_extension): Use tempnam instead of tmpnam (AIX doesn't
2004 like the latter when compiled with -mthreads).
2006 * user.c (execute_menu_command): ditto.
2008 Wed Apr 21 20:40:38 1999 Norbert Warmuth <nwarmuth@privat.circular.de>
2010 * Makefile.in: use MCCFLAGS and MCLIBS
2012 Wed Apr 21 20:19:45 1999 Norbert Warmuth <nwarmuth@privat.circular.de>
2014 * key.c (get_modifier): Query the state of the modifier keys when
2015 running inside a terminal emulation under X11.
2017 * key.c (init_textmode_x11_support, done_textmode_x11_support): new
2018 functions, only used in the text edition. Connect to and disconnect
2019 from the X Server when DISPLAY is set.
2021 * key.h: added prototypes for the new functions
2023 * main.c (main): call (init|done)_textmode_x11_support
2025 Sat Apr 17 13:04:19 1999 Norbert Warmuth <nwarmuth@privat.circular.de>
2027 * view.c (do_view_init): Enable viewing of files with negative
2028 st_size (This reverts parts of a patch I commited recently. Miguel
2029 provided a better fix for this issue).
2031 1999-04-16 Miguel de Icaza <miguel@nuclecu.unam.mx>
2033 * view.c (regexp_search): Use unsigned longs for all of the
2034 offsets here. Fixes crash reported on bugtraq.
2036 1999-04-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
2038 * treestore.c (tree_store_save_to): Moved the functionality from
2039 tree_store_save() to here.
2040 (tree_store_save): Save the tree in the default location in an
2042 (tree_store_load_from): Moved the functionality from
2043 tree_store_load() to here.
2044 (tree_store_load): Load the tree from the default location.
2046 * treestore.h (MC_TREE_TMP): Added a #define for the temporary
2047 name we'll use when saving the tree. Moved the #defines from
2048 tree.h over to here.
2050 * main.c (main): Use tree_store_load() and tree_store_save().
2051 Removed the mc_tree_store_load/save() versions.
2053 * tree.c (load_tree): Use tree_store_load().
2054 (save_tree): Use tree_store_save().
2056 Fri Apr 16 07:51:42 1999 Norbert Warmuth <nwarmuth@privat.circular.de>
2058 * wtools.c (message): Use g_vsnprintf instead of vsprintf.
2060 Fri Apr 16 07:50:59 1999 Norbert Warmuth <nwarmuth@privat.circular.de>
2062 * view.c (do_view_init): Don't view files with negative file size.
2063 Added some error checking (I'm not sure whether this is needed).
2065 1999-04-15 Federico Mena Quintero <federico@nuclecu.unam.mx>
2067 * panel.h (WPanel): Added a drag_tree_row field to the WPanel
2068 structure. This is used to keep track of the highlighted row in
2069 the tree for drag and drop. Also, added drag_tree_timeout_id to
2070 hold the node expand timeout. Also, added drag_tree_fe to hold
2071 the file_entry for the currently highlighted row in the tree.
2073 1999-04-13 Miguel de Icaza <miguel@nuclecu.unam.mx>
2075 * utilunix.c (my_system): Set up default signal handlers for childs.
2077 Tue Apr 13 07:14:10 1999 Norbert Warmuth <nwarmuth@privat.circular.de>
2079 * slint.c (getch): Quit MC when SLang_getkey returns an error. Looking
2080 at the code that's only the case when we read EOF from stdin.
2082 This fixes the problem where MC consumes a lot of cpu time while
2083 reading EOF from stdin in a tight loop. This situation arises when the
2084 terminal line/connection drops without MC being sent SIGHUP.
2086 Tue Apr 13 07:13:10 1999 Norbert Warmuth <nwarmuth@privat.circular.de>
2088 * slint.c (SLang_input_pending2): don't store SLANG_GETKEY_ERROR (int)
2089 in the input buffer (char).
2091 1999-04-12 Andrew T. Veliath <andrewtv@usa.net>
2093 * main.c (_do_panel_cd): If we are using GNOME, and the panel is a
2094 desktop panel, open up a new panel for the contents.
2096 1999-04-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
2098 * tree.c (tree_start_search): Renamed from start_search() to avoid
2099 collisions with screen.c:start_search().
2101 * panel.h: Added prototype for start_search().
2103 1999-04-09 Rosanna Yuen <rwsy@mit.edu>
2105 * screen.c (do_enter_on_file_entry): split GNOME version and
2107 (parse_display_format): listen to the warning.
2109 1999-04-08 Miguel de Icaza <miguel@nuclecu.unam.mx>
2111 * treestore.c (tree_store_load): Do not load non-local file
2113 (tree_store_save): Do not save non-local file systems
2115 1999-04-07 Jonathan Blandford <jrb@redhat.com>
2117 * screen.c (do_enter_on_file_entry): added a consistent behaviour
2120 1999-04-06 David Martin <dmartina@usa.net>
2122 * info.c (text out of box and locale layout).
2124 * util.c: If gmc uses strftime() why mc doesn't?
2126 * view.c: a) Tune status line so it does fit in a Quick View Panel
2127 b) Let Hex View resize cleanly. I think it's fixed for panel
2128 re-split and SIGWINCH signal in xterm. gmc still fails. There was
2129 a tiny risk of division by zero when pressing F4 in a very small
2130 box. True hard work... Must try and check it.
2132 1999-04-05 Federico Mena Quintero <federico@nuclecu.unam.mx>
2134 * main.c (main): Call mc_tree_store_save() when the program
2137 1999-04-05 Miguel de Icaza <miguel@nuclecu.unam.mx>
2139 * find.c (setup_gui): Do not scroll horizontally. Why does the
2140 CList behave like this?
2142 * setup.c: Save desktop information.
2144 1999-04-05 Federico Mena Quintero <federico@nuclecu.unam.mx>
2146 * cons.saver.c (main): dup2() may be interrupted; take this into
2147 account. Do we need to fcntl() stderr, or is it enough to close()
2148 it before recreating it?
2150 1999-03-30 Federico Mena Quintero <federico@nuclecu.unam.mx>
2152 * dlg.c (dlg_run_done): Do not call the callback of a NULL current
2155 * setup.h: Added missing prototype for setup_init().
2157 * filegui.c (check_progress_buttons): Added a missing return
2160 * dlg.c (remove_widget): Added a missing return value.
2162 * main.c: Removed the global directory_list variable.
2163 Removed the main_corba_register_server() function.
2165 * main.h: Removed the global run_desktop variable.
2167 * panel.h: Now the panel structure has a unique numerical ID used
2168 for session management.
2170 * screen.c (panel_new): Maintain a unique ID for each panel.
2172 * main.c (maybe_display_linksdir): Handle display of the desktop
2174 (main): Call gnome_check_super_user().
2175 (init_corba_with_args): Call corba_init_server().
2177 * main.c (init_corba_with_args): Do CORBA initialization here. Also
2178 removed the global force_activation option.
2180 1999-03-29 Jonathan Blandford <jrb@redhat.com>
2182 * main.c (main): updated message.
2184 Sun Mar 28 23:52:08 1999 Norbert Warmuth <nwarmuth@privat.circular.de>
2186 * util.c (is_printable): Character 155 is non printable even when
2187 full eight bit output is enabled (on the linux console 155 is
2188 interpreted as "ESC [").
2190 1999-03-26 Federico Mena Quintero <federico@nuclecu.unam.mx>
2192 Patch courtesy of John Bley (jbb6@acpub.duke.edu):
2194 * background.c (do_background): Use pid_t instead of int.
2196 * subshell.c (sigchld_handler): Likewise.
2198 1999-03-24 Federico Mena Quintero <federico@nuclecu.unam.mx>
2200 * Makefile.in: Use mcsrclibdir where appropriate.
2202 1999-03-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
2204 * treestore.c (process_special_dirs): Free memory here.
2206 Fix test: Skip only "." and "..", before it could skip "?.".
2208 1999-03-22 David Martin <dmartina@mailexcite.com>
2210 * wtools.c (real_input_dialog_help): Do a strncmp with the lenght
2211 of th same translated "Password:" string.
2213 Mon Mar 22 02:05:28 1999 Timur Bakeyev <mc@bat.ru>
2215 * screen.c (file_entry_color): Dropped. Code went to file_compute_color.
2217 * screen (format_file): Add check, that avoids reported error, when
2218 long file list -> quick view -> brief file list gives core dump.
2220 1999-03-19 Jonathan Blandford <jrb@redhat.com>
2222 * main.c (main): We don't want to restart if we hit cancel.
2224 * file.c (panel_operate): Ugly hack for GNOME. We only treat the
2225 copy as if it were many files, and skip the only_one branch.
2227 1999-03-18 Miguel de Icaza <miguel@nuclecu.unam.mx>
2229 * utilunix.c (close_error_pipe): Inform parent of the return value
2230 of any command here. This allows the desktop to launch a terminal
2231 only if it succeeded in mounting the directory.
2233 Thu Mar 18 16:09:09 1999 Timur Bakeyev <mc@bat.ru>
2235 * panel.h, screen.c: Add an ability to center justify fields in the
2236 panel, in addition to left and right justification. Just for fun.
2237 Try =name in user format.
2239 * util.c (name_quote): Quote "~@^|;:". Hope, that's all :)
2241 1999-03-17 Jonathan Blandford <jrb@redhat.com>
2243 * main.c (main): Put in a warning when run as root.
2245 1999-03-15 Federico Mena Quintero <federico@nuclecu.unam.mx>
2247 * boxes.c (symlink_dialog): Put this inside an "#ifndef
2248 HAVE_GNOME" since we now provide a nicer version of the dialog.
2250 * wtools.c (real_input_dialog_help): Removed un-needed #ifdef.
2252 * cmd.c (edit_symlink_cmd): Generate the title of the dialog after
2253 we have computed the source filename.
2254 (edit_symlink_cmd): Use g_strdup_printf() instead of g_strconcat()
2255 for better internationalization.
2257 * wtools.c: Removed unused function input_dialog_help_2().
2258 (real_input_dialog_help): Put this inside an "#ifndef HAVE_GNOME",
2259 because now the Gnome version implements its own pretty dialog.
2261 1999-03-14 Miguel de Icaza <miguel@nuclecu.unam.mx>
2263 * dlg.c (dlg_select_nth_widget): Handle the case where h->current
2266 1999-03-12 Federico Mena Quintero <federico@nuclecu.unam.mx>
2268 * file.c (erase_file): Here we need to mc_lstat(), not mc_stat().
2269 Since we use the resulting buf.st_size to update the progress, we
2270 need the size of unresolved links. This also makes it consistent
2271 with screen.c:do_file_mark().
2273 * screen.c (select_item): Return immediately if this is a desktop
2276 1999-03-12 Miguel de Icaza <miguel@nuclecu.unam.mx>
2278 * subshell.c (pty_open_slave): Glibc-2.1-based Linux kernels have
2279 grantpt() but they do lack SysV streams. Handle this. Noticed by
2282 1999-03-11 Federico Mena Quintero <federico@nuclecu.unam.mx>
2284 * util.h: Added prototype for g_readlink(). Miggie boy should add
2285 prototypes when he adds public functions.
2287 1999-03-11 Miguel de Icaza <miguel@nuclecu.unam.mx>
2289 * utilunix.c (g_readlink): Fixed two bugs spotted by Morten
2290 Wellinder. Boy, Morten has such a good eye!
2292 1999-03-10 Federico Mena Quintero <federico@nuclecu.unam.mx>
2294 * file.c (erase_dir): Erase metadata for directories as well.
2295 (erase_dir_iff_empty): Likewise.
2296 (copy_file_file): Delete/copy the metadata even for
2297 char/block/sock/fifo files. Same thing for when copying symlinks.
2298 (copy_dir_dir): Delete/copy the metadata.
2299 (move_dir_dir): Delete/move the metadata.
2300 (recursive_erase): Delete the metadata.
2302 1999-03-08 Federico Mena Quintero <federico@nuclecu.unam.mx>
2304 * file.c (real_query_recursive): Removed an unused variable.
2306 1999-03-10 Miguel de Icaza <miguel@nuclecu.unam.mx>
2308 * utilunix.c (g_readlink): New function. Wraps all the nonsense
2309 of readlink into a nice routine.
2311 * filegui.c: Support ui->ctx to be NULL, as file.c will set this
2312 to NULL for background operations.
2314 * background.c (do_background): Handle EINTR in dup2.
2316 Wed Mar 10 22:21:19 1999 David Martin <dmartina@usa.net>
2318 * util.c (my_putenv): char* was used to store the length of a string
2320 * info.c (info_show_info): cast st_dev and st_ino when passing
2323 1999-03-08 Miguel de Icaza <miguel@nuclecu.unam.mx>
2325 * file.c (panel_operate): Always create the ctx->ui. Federico,
2326 can you see if this change is correct from your point of view?
2328 * cmd.c (edit_symlink_cmd): Small fix to improve the messages
2331 Tue Mar 2 22:54:50 1999 Norbert Warmuth <nwarmuth@privat.circular.de>
2333 * util.c (name_quote): Quote '<' and '>'.
2335 Tue Mar 2 22:28:39 1999 Norbert Warmuth <nwarmuth@privat.circular.de>
2337 * main.c (panel_clean_dir): New function: reset all counters of a
2338 WPanel and clean directory list.
2340 * various places: Use panel_clean_dir instead of clean_dir whenever
2341 a WPanel is available. This solves the problem reported by Enrico
2342 Scholz (screen refresh while panel reload with an old/now invalid
2345 Mon Mar 1 00:18:48 1999 Timur Bakeyev <mc@bat.ru>
2347 * mad.c: Tempnam() returns malloced buffer, so, free() it, not g_free().
2349 1999-02-26 Miguel de Icaza <miguel@nuclecu.unam.mx>
2351 * view.c (view_percent, view_update): Take an extra argument:
2352 update_gui, which controls whether we want to update the displayed
2353 region in the GUI version.
2355 1999-02-25 Jonathan Blandford <jrb@redhat.com>
2357 * cmd.c (symlink_cmd): little change to handle the case when a
2358 desktop panel is passed in.
2360 1999-02-25 Owen Taylor <otaylor@redhat.com>
2362 * fileopctx.h file.c: Moved recursive delete query
2363 dialog into gdialogs.c for GNOME.
2365 1999-02-24 Miguel de Icaza <miguel@nuclecu.unam.mx>
2367 * file.c: Moved FileCopyMode here (thanks to Wolfgang Scherer for
2368 pointing this out) and made it a typedef.
2370 * treestore.c (process_special_dirs): New function.
2371 (should_skip_directory): Load the settings from the global
2372 special.dirs file and from the
2374 * util.c: Test for glibc/linux and if so, do not use getwd, but
2375 getcwd as on this system it is better than popen ("pwd").
2377 1999-02-18 Federico Mena Quintero <federico@nuclecu.unam.mx>
2379 * setup.c: Declare extern int tree_panel_visible for the GNOME
2382 1999-02-17 Federico Mena Quintero <federico@nuclecu.unam.mx>
2384 * dir.c (if_link_is_exe): Made this function take in a directory
2385 argument as well -- the sought file may not be in the cwd, and
2386 file entries do not carry the directory the file refers to.
2388 * screen.c (do_enter_on_file_entry): Pass in the cpanel->cwd to
2391 1999-02-16 Miguel de Icaza <miguel@nuclecu.unam.mx>
2393 * treestore.c (tree_store_rescan): Add code to skip scanning
2394 specially slow directories (/afs, /coda, /...). It is of course,
2397 * setup.c: Export the profile_name setup routine.
2399 Tue Feb 16 21:21:32 1999 Norbert Warmuth <nwarmuth@privat.circular.de>
2401 * popt.c: Compilation fix: on systems without setreuid use setuid.
2403 Tue Feb 16 21:18:08 1999 David Martin <dmartina@usa.net>
2405 * achown.c: Make buttons fit in the (new) translated
2406 Advanced Chown dialog.
2408 1999-02-16 Alexaander Savelyev <fano@ham.kiev.ua>
2410 * subshell.c (exit_subshell): Use the size of the buffer, not
2411 sizeof of the pointer to the buffer.
2413 Sun Feb 14 02:59:09 1999 Timur Bakeyev <mc@bat.ru>
2415 * utilunix.c (my_system): Fix the order of preferenses, as setuid
2416 more desirable on BSD systems. Terminate execl[p]() with NULL, as
2417 this is formally correct.
2419 1999-02-12 Miguel de Icaza <miguel@nuclecu.unam.mx>
2421 * dir.c (do_load_dir): Added missing calls to tree_store_end_check.
2423 * find.c (add_to_list): Pass the data pointer as well.
2425 Fri Feb 12 06:36:58 1999 Norbert Warmuth <nwarmuth@privat.circular.de>
2427 * utilunix.c (my_system): Compilation fix: on systems without
2428 setreuid use setuid.
2430 1999-02-11 Federico Mena Quintero <federico@nuclecu.unam.mx>
2432 * panel.h (WPanel): Removed unused field "corbadat".
2434 1999-02-10 Miguel de Icaza <miguel@nuclecu.unam.mx>
2436 * screen.c: Make delete key delete files.
2438 * dir.c (do_reload_dir): Add a couple of missing calls to tree_store_end_check.
2440 1999-02-10 Federico Mena Quintero <federico@nuclecu.unam.mx>
2442 * main.h: Added prototype for main_corba_register_server().
2444 1999-02-09 Miguel de Icaza <miguel@nuclecu.unam.mx>
2446 * view.c (search): Provide GNOME specific code for the search progress
2448 * treestore.c: Add a new hook system to hint a tree freeze/thaw.
2450 * setup.c: In the GNOME version, we do not show the dot files by default.
2452 1999-02-08 Miguel de Icaza <miguel@nuclecu.unam.mx>
2454 * file.c (copy_file_file): Add support for the GNOME metadata here.
2455 (move_file_file): Add support for the GNOME metadata here.
2457 1999-02-07 Miguel de Icaza <miguel@nuclecu.unam.mx>
2459 * treestore.c (tree_store_add_entry): Use g_new0 to allocate the tree_entry.
2461 (tree_store_notify_add): Close, but no cigar. The
2462 bug was deeper: This list keeps names, not tree_entries.
2464 1999-02-07 Federico Mena Quintero <federico@nuclecu.unam.mx>
2466 * treestore.c (tree_store_notify_add): A tree_store_add_fn wants a
2467 string, not a tree_entry, so pass a string to it.
2469 1999-02-07 Miguel de Icaza <miguel@nuclecu.unam.mx>
2471 * treestore.c: Revert all of the stack changes. Now the treestore
2472 is again non-re-entrant. Being re-entrat was only covering up for
2473 bugs in other places.
2475 Now we postpone notifications for additions at
2476 tree_store_end_check, not before.
2478 1999-02-06 Federico Mena Quintero <federico@nuclecu.unam.mx>
2480 * treestore.c (tree_store_remove_entry): Removed unused code for
2481 base_sublevel computation.
2483 Sun Feb 7 06:11:48 1999 Timur Bakeyev <mc@bat.ru>
2485 * Makefile.in: Change calls to xmkdir to mkinstalldirs - this is more
2488 * xmkdir removed - we have mkinstalldirs.
2490 1999-02-06 Miguel de Icaza <miguel@nuclecu.unam.mx>
2492 * cmd.c (view_other_cmd): Do not use \r in translatable strings.
2494 1999-02-04 Miguel de Icaza <miguel@nuclecu.unam.mx>
2496 * widget.c (push_history): Only do check the history headings if
2497 the widget has a history entry bound to it.
2499 1999-02-03 Miguel de Icaza <miguel@nuclecu.unam.mx>
2501 * treestore.c (tree_store_start_check, tree_store_mark_checked,
2502 tree_store_end_check): Use a stack for check_name. There are far
2503 too many instances that might call the end_check.
2505 Wed Feb 3 23:55:54 1999 Norbert Warmuth <nwarmuth@privat.circular.de>
2507 * widget.c (history_put): set the access rights correctly when
2508 the history file is created initially. Don't save the history
2509 if we can't set the access rights.
2511 1999-02-01 Jonathan Blandford <jrb@redhat.com>
2513 * setup.c: save we_can_afford_the_speed
2515 Wed Feb 3 22:27:04 1999 Norbert Warmuth <nwarmuth@privat.circular.de>
2517 * util.c (strip_password): Extented to find the url in the first
2518 parameter. The second parameter tells whether it should search the
2519 url (indicated by known prefixes) in the first parameter or whether
2520 the first parameter is a url without a prefix ("ftp://", "/#ftp:",
2523 * main.c (directory_history_add): Strip the password (if any) from
2524 the freshly added value.
2526 * widget.c (push_history): ditto. There's a ugly special casing
2527 necessary for the network and ftp link dialogs (urls are entered
2530 * widget.c (history_put): Restrict read and write access to the
2531 history file to the owner (Just in case I forgot to strip passwords
2534 Mon Feb 1 00:43:15 1999 Timur Bakeyev <mc@bat.ru>
2536 * screen.c (to_buffer): Code of the function rewritten, as a side
2537 effect added J_CENTER (who needs this?). Also, justification flags
2538 got twins with _FIT suffix, which tries to fit name in the field with-
2539 out truncation (uses name_trunc()). This unifies behaviour of CList
2540 variants and text-bases widgets.
2542 * screen.c: Remove HAVE_GNOME wrappers around string_file_[name|owner|
2543 group]() - not necessary, to_buffer() doing this work.
2545 Sun Jan 31 19:49:00 1999 Norbert Warmuth <nwarmuth@privat.circular.de>
2547 * hotlist.c (add_new_entry_input, add_new_group_input): Make the
2548 quick_widget arrays static and various changes needed because they
2549 are now static. add_widgets_i18n recalculates button positions
2550 which get lost when the quick_widget arrays are non static.
2552 * screen.c (to_buffer): nul terminate string when using strncpy
2554 * setup.c: Save and restore new option ftpfs_first_cd_then_ls.
2556 1999-01-31 Federico Mena Quintero <federico@nuclecu.unam.mx>
2558 * file.c (panel_operate_generate_prompt): Removed the cmd_buf
2559 argument, since it is a global variable anyway (this function is
2560 only called once from file.c, and the global cmd_buf was being
2562 (panel_operate): Do not pass cmd_buf to
2563 panel_operate_generate_prompt().
2564 Thanks to Alexander Savelyev <fano@vcom.kiev.ua> for noticing this.
2566 1999-01-30 Miguel de Icaza <miguel@nuclecu.unam.mx>
2568 * achown.c (XTRACT): Add missing call to _().
2570 1999-01-26 Federico Mena Quintero <federico@nuclecu.unam.mx>
2572 * panel.h: Fixup #includes.
2574 1999-01-26 Miguel de Icaza <miguel@nuclecu.unam.mx>
2576 * cons.saver.c: Removed glib from the suid app
2578 Wed Jan 27 03:17:44 1999 Timur Bakeyev <mc@bat.ru>
2580 * Converted memory managment to Glib. Now we use g_new()/g_malloc()/
2581 g_strdup()/g_free() routings. Also, copy_strings() replaced by
2582 g_strconcat(), strcasecmp() -> g_strcasecmp(),and sprintf() by
2585 * Some sequences of malloc()/sprintf() changed to g_strdup_printf().
2587 * mad.[ch]: Modified, to work with new GLib's memory managment. Fixed
2588 a missing #undef for tempnam, which caused dead loop. Add several new
2589 functions to emulate GLib memory managment.
2591 *main.c, mad.[ch]: Add a new switch "-M", which allows to redirect MAD
2592 messages to the file.
2594 * util.[ch], utilunix.c: Modified, deleted our variants of strcasecmp()
2595 and strdup() - we have g_ equivalences. Remove get_full_name() - it is
2596 similar to concat_dir_and_file(). Some other tricks with g_* functions.
2598 * global.h: Modified, extended. Now it is main memory mangment include -
2599 i.e. all inclusions of <stdlib.h>, <malloc.h>, <glib.h>, "fs.h", "mem.h",
2600 "util.h" and "mad.h" done there. This elimanates problem with proper or-
2603 * All around the source - changed order of #include's, most of them gone
2604 to global.h (see above), minor changes, like "0" -> NULL in string func-
2607 1999-01-25 Alexander Savelyev <fano@vcom.kiev.ua>
2609 * ext.c (exec_extension): Always use /bin/sh. Not the user
2612 1999-01-23 Miguel de Icaza <miguel@nuclecu.unam.mx>
2614 * treestore.c (tree_store_remove_entry_remove_hook): Missing
2615 function. To remove a notification hook.
2616 (tree_store_notify_add, tree_store_add_entry_add_hook,
2617 tree_store_remove_entry_add_hook): New functions to notify of
2618 additions to the treestore.
2620 * tree.c (tree_destroy): Remove the callback hook when we go
2623 1999-01-21 Miguel de Icaza <miguel@nuclecu.unam.mx>
2625 * option.c (init_configure): One line patch from Alexander
2626 Savelyev to transalate all strings.
2628 1999-01-18 Pavel Machek <pavel@artax.karlin.mff.cuni.cz>
2630 * file.c: Killed operation_names: they seemed same to op_names to
2631 me, and compilation failed on them (initializer element is not a
2632 constant). Maybe miguel tagged too many strings for localization?
2635 * ext.c: we use /tmp in "creative" way: creating there file and
2636 then executing it. I do not see how it is needed. Marked with FIXME.
2638 Thu Jan 21 01:11:24 1999 Timur Bakeyev <mc@bat.ru>
2640 * mad.[ch], util.[ch]: commit changes, that allow coexist (temporary)
2641 GLib'ed VFS and not still converted MC itself.
2643 1999-01-20 Federico Mena Quintero <federico@nuclecu.unam.mx>
2645 * treestore.c (tree_store_start_check): Use mc_stat(), not stat().
2646 (tree_store_rescan): Use mc_lstat(), not lstat().
2648 Tue Jan 19 05:28:04 1999 Timur Bakeyev <mc@bat.ru>
2650 * ext.c, filenot.c, main.c, screen.c, treestore.c: add missed #include's
2651 and moved glib.h so, it follows "fs.h", but preceed "util.h" and "mad.h".
2652 There were conflicts during compilation with MAD and GLibed vfs.
2654 Mon Jan 18 21:23:29 1999 Paul Sheer <psheer@obsidian.co.za>
2656 * cmd.c: update_panels (UP_OPTIMIZE, UP_KEEPSEL); instead
2657 of reread after editing a file.
2659 1999-01-18 Arturo Espinosa <arturo@nuclecu.unam.mx>
2661 * file.c: Use N_ instead of _ for some of miguel's last tags.
2663 1999-01-18 Miguel de Icaza <miguel@nuclecu.unam.mx>
2665 * file.c: Tag some more strings for localization.
2667 1999-01-15 Miguel de Icaza <miguel@nuclecu.unam.mx>
2669 * cmd.c (mkdir_cmd): Please, check your pointer usage.
2671 Thu Jan 14 13:18:58 1999 Timur Bakeyev <mc@bat.ru>
2673 * screen.c (string_file_[owner|group]): Workaround the fact, that some
2674 systems have user and group names greater than 8 symbols. Now we trun-
2677 1999-01-13 Federico Mena Quintero <federico@nuclecu.unam.mx>
2679 * treestore.c (tree_store_load): Use g_return_val_if_fail(), not
2681 (tree_store_rescan): Added parentheses to clarify || and &&.
2683 * tree.c (tree_add_entry): Removed unused variable.
2685 * treestore.h: Added prototype for tree_store_start_check_cwd().
2687 1999-01-13 Miguel de Icaza <miguel@nuclecu.unam.mx>
2689 * view.c (search): Missing condition.
2691 * treestore.c (tree_store_opendir): Simplistic fix. This is not
2694 1999-01-12 Federico Mena Quintero <federico@nuclecu.unam.mx>
2696 * panelize.h: Added prototype for do_external_panelize().
2698 * screen.c (move_selection): Unused variable fixes for HAVE_X.
2700 * boxes.c (configure_vfs): Removed an unused variable.
2702 1999-01-12 Jonathan Blandford <jrb@redhat.com>
2704 * cmd.c (mkdir_cmd): now mkdir_cmd will accept relative, and
2705 absolute directories.
2707 Tue Jan 12 13:40:46 1999 Timur Bakeyev <mc@bat.ru>
2709 * gtkedit(syntax.c): Fixed a typo in Pascal syntax.
2711 1999-01-12 Miguel de Icaza <miguel@nuclecu.unam.mx>
2713 * treestore.c (tree_store_save): Add signature for version 2.0 of
2716 1999-01-11 Federico Mena Quintero <federico@nuclecu.unam.mx>
2718 * file.c (do_file_error): Made static.
2719 (query_recursive): Have cases for background/foreground operation.
2720 (do_file_error): Likewise.
2722 * background.c: Removed the bg_ctx global, since now all the
2723 contexts are carried around by the functions that actually need
2726 * fileopctx.h (FileOpContext): Moved the op_preserve field to here.
2728 * filegui.c (file_mask_dialog): Removed the ui assertion, since
2729 now the op_preserve field is kept in the main context structure.
2731 1999-01-11 Miguel de Icaza <miguel@nuclecu.unam.mx>
2733 * util.c: Provide workarounds for Linux kernel bug.
2735 Sun Jan 10 02:18:33 1999 Timur Bakeyev <mc@bat.ru>
2737 * screen.c(string_file_size): Fixed (incorrect?) printing of device num-
2738 bers. Major should never be greater 255.
2740 1999-01-08 Miguel de Icaza <miguel@nuclecu.unam.mx>
2742 * dir.c (handle_dirent): Use the tree_store now.
2743 (handle_path): ditto.
2744 (do_load_dir): ditto.
2745 (do_load_dir): ditto.
2746 (do_reload_dir): ditto.
2747 (do_reload_dir): ditto.
2749 * treestore.c (tree_store_save): New file
2750 (encode): New routine used to encode pathnames in a safe way that
2751 are saved to the mc/.tree file.
2752 (decode): New routine, used to decode the pathnames we encoded in
2753 the step above. Aint love grand?
2755 * tree.c (load_tree): Kill dead code.
2757 Moved all of the tree store information into a new file:
2758 treestore. To be reused by the Gnome code.
2760 1999-01-08 Ilya Zakharevich <ilya@math.ohio-state.edu>
2762 * popt.c: OS/2 and Windows NT portability fix.
2764 1999-01-07 Miguel de Icaza <miguel@nuclecu.unam.mx>
2766 * file.c (panel_operate_flags): Only show this dialog box if it is
2767 a copy or move operation
2769 1999-01-06 Federico Mena Quintero <federico@nuclecu.unam.mx>
2771 * background.c (do_background): Make it a bit saner. Now we store
2772 a per-child-process FileOpContext structure.
2774 * fileopctx.h: New file with declarations for the file operation
2777 * fileopctx.c (file_op_context_new): New function to create a file
2778 operation context with the default file mask values.
2779 (file_op_context_destroy): New function to destroy a file
2780 operation context and its associated UI, if appropriate.
2782 * filegui.h: Use complete prototype for fmd_init_i18n().
2784 * filegui.c (FileOpContextUI): New structure that describes the UI
2785 and internal data for file operation contexts in the text mode
2787 (file_op_context_create_ui): Renamed from create_op_win() and
2788 made it use a context instead of global variables.
2789 (file_op_context_destroy_ui): Likewise, renamed from
2791 (fmd_widgets): Removed an #ifdef HAVE_XVIEW bit and moved the
2792 initialization of the result pointers to file_mask_dialog(), as we
2793 need to use the pointers to the fields inside the file op context now.
2794 Made all the functions use a file operation context.
2795 (file_mask_dialog): Always call fmd_init_i18n(); it will take care
2796 of idempotence by itself.
2797 (fmd_init_i18n): Now the code that makes sure this function is
2798 only called once is here.
2800 * cmd.c (check_for_default): Make it use a file operation context.
2801 * tree.c (tree_copy): Likewise.
2802 (tree_move): Likewise.
2803 (tree_rmdir_cmd): Likewise.
2805 * file.c: Removed file_progress_replace_progress and
2806 file_progress_replace_filename -- they are only used in filegui.c
2807 as part of the UI for the file operation context.
2808 (panel_operate_generate_prompt): Made static.
2809 (panel_operate_generate_prompt): Always call fmd_init_i18n(); it
2810 will take care of idempotence by itself.
2811 (panel_operate): Removed the panel_operate_def() function, and
2812 made panel_operate() take an extra "ask_user" argument.
2813 (query_recursive): Made static.
2815 * background.c (background_attention): Made static.
2816 (register_task_running): Made static.
2817 (do_background): Now takes a file operation context as an
2818 argument. It stores the pid of the child there.
2820 * Makefile.in: Added fileopctx.[ch].
2822 1999-01-06 Miguel de Icaza <miguel@nuclecu.unam.mx>
2824 * widget.c (listbox_new): Assing l->height.
2826 1999-01-03 Miguel de Icaza <miguel@nuclecu.unam.mx>
2828 * main.c (update_one_panel_widget): GNOME version does the panel
2829 update here (this is an optimization, as we do not want do_refresh
2832 * dialog.c (do_refresh): Remove this optimization as it was
2833 disabling the repainting of the screen contents.
2835 * hotlist.c (done_hotlist): The hotlist might not be loaded
2838 1999-01-02 Miguel de Icaza <miguel@nuclecu.unam.mx>
2840 * widget.c (listbox_new): Under GNOME, height of the listbox might
2841 be less than zero (due to LINES/COLS being set to zero there). So
2842 for bow, set the height to 1. This needs to be propery computed
2843 in x_create_listbox.
2845 * main.c (main): Do not load the hotlist here anymore. We
2846 auto-load it on the setup(?).
2848 1998-12-30 Miguel de Icaza <miguel@nuclecu.unam.mx>
2850 * main.c (main): Removed old, unused code.
2851 (setup_panels_and_run_mc): Register the corba server here, not
2852 before, as the program is not ready to accept any commands yet.
2854 * screen.c (panel_set_sort_order): New routine to set the sorting
2856 (panel_re_sort): New routine to force a resort on a panel.
2858 * main.c (sort_cmd): Use the new routines.
2860 1998-12-29 Miguel de Icaza <miguel@nuclecu.unam.mx>
2862 * cmd.c (check_for_default): Make this compile.
2864 Tue Dec 29 22:25:34 1998 Timur Bakeyev <mc@bat.ru>
2866 * mountlist.c: Compress all xBSD systems to one line and add check
2867 for MOUNT_UFS - it seems, that 4.4BSD and 4.4BSD2 systems different-
2868 ly handles FS names. (currently affects BSDI and FreeBSD)
2870 Tue Dec 29 16:34:02 1998 Norbert Warmuth <nwarmuth@privat.circular.de>
2872 * file.c (progress_update_one): Ignore files in subdirectories
2873 when panel totals haven't been computed.
2875 (erase_dir, erase_file): update progress bar (i.e. make it work
2878 (panel_operate_flags): Don't compute panel totals for OP_MOVE.
2879 When moving files on the same filesystem computing totals might
2880 last much longer than the actual move operation.
2882 (various places): adpations for the above changes.
2884 Mon Dec 28 22:15:43 1998 Norbert Warmuth <nwarmuth@privat.circular.de>
2886 * slint.c (try_alloc_color_pair): Changed hardcoded values into
2889 Mon Dec 28 20:22:59 1998 Norbert Warmuth <nwarmuth@privat.circular.de>
2891 * color.c, text.c: Added color "stalledlink" which is used for
2892 stalled symbolic links. Formerly "viewunderline" was used for
2893 this (IMO bad because function and name didn't match).
2894 According to the man page the color keyword for executable files
2895 is `executable' and not `execute' -- changed.
2897 * color.c, color.h: When using SLang some color indexes are not
2898 freely choosable (DEFAULT_COLOR clashed with A_BOLD_REVERSE).
2899 Solved by adding holes in color_map.
2901 * find.c (do_search): fixed possible memory leak
2903 Sat Dec 26 09:53:39 1998 Norbert Warmuth <nwarmuth@privat.circular.de>
2905 * layout.c: include sys/ioctl.h to get definition of TIOCGWINSZ
2906 (fixes problem with screen resize).
2908 Fri Dec 25 20:19:57 1998 Norbert Warmuth <nwarmuth@privat.circular.de>
2910 * file.c (panel_operate_flags): Don't change file progress count and
2911 size twice for every file.
2913 (panel_compute_totals): Initialize return values to zero before
2914 calculating anything.
2916 (panel_operate_def, panel_operate): return a value
2918 Thu Dec 24 19:00:05 1998 Norbert Warmuth <nwarmuth@privat.circular.de>
2920 * screen.c (recalculate_panel_summary): new function which recalculates
2921 the summary information for the mini-status.
2923 * screen.c (panel_reload): use recalculate_panel_summary
2925 * screen.c (do_file_mark): Honour that dirsizes computed is now a
2928 Thu Dec 24 18:53:16 1998 Norbert Warmuth <nwarmuth@privat.circular.de>
2930 * option.c: Added Compute Totals to the configuration dialog.
2932 * file.c (compute_dir_size): made non static
2934 (panel_operate_flags): Don't compute directory sizes if verbose
2937 Thu Dec 24 18:42:52 1998 Norbert Warmuth <nwarmuth@privat.circular.de>
2939 * cmd.c (dirsizes_cmd): Rewritten to use compute_dir_size as suggested
2940 by Miguel, i.e. get rid of du. Now the dirsizes_cmd honours a
2941 selection and computes sizes only for marked directories. Possible
2942 improvement: add a dialog (or C-C?) to abort computation.
2944 * dir.h (file_entry), panel.h (WPanel): Made the dirsizes computed
2945 flag a per file flag.
2947 * dir.c, find.c, panelize.c, screen.c: Adapted to new file_entry and
2950 * features.inc: Deleted DUSUM information
2952 * mc.hlp: remade because of changes in doc/mc.1.in
2954 1998-12-22 Jonathan Blandford <jrb@redhat.com>
2956 * file.c: add a HAVE_GNOME only function
2958 Mon Dec 21 22:39:35 1998 Norbert Warmuth <nwarmuth@privat.circular.de>
2960 * mountlist.c: Define xBSD on FreeBSD.
2962 * main.c (parse_an_arg): New function, popt callback. Option
2963 parsing in gmc was broken. The gnome*_init_with_popt_table free
2964 the option tables and gmc tried to use the option tables later.
2966 * main.c (handle_args): In the Gnome edition don't parse the
2967 options a second time.
2969 * boxes.c (configure_vfs), setup.c: Deleted obsolete options.
2970 tar.gz files are now always unzipped to a temporary file on disk.
2972 Mon Dec 21 14:28:55 1998 Norbert Warmuth <nwarmuth@privat.circular.de>
2974 * filenot.c (my_mkdir_rec): Someone broke this completely by deleting
2975 a line. Funny things happen if you use an already freed pointer.
2976 Improved error handling: try to make directories recursivly until
2977 mkdir succeeds or fails with errno != ENOENT. Now you will get the
2978 correct error message when you don't have permission to create a
2981 * mountlist.c: Deleted function prototypes for strdup and strstr,
2982 they might conflict with definitions in the system header files.
2984 Wed Dec 16 14:41:15 1998 Paul Sheer <psheer@obsidian.co.za>
2986 * gtkedit.c, editwidget.c: gnome selection now works with the
2989 Wed Dec 16 06:27:00 1998 Norbert Warmuth <nwarmuth@privat.circular.de>
2991 * screen.c (Xtry_to_select): Don't select a similar file when
2992 "name" can't be found in the panel (when deleting files the
2993 selection jumpped from the deleted "file" to a directory which
2994 started with the same character as "file", annoying).
2995 Strip known vfs suffixes from "name" before trying to select
2996 (I think Timur made this suggestion a few months ago). Know the
2997 vfs is mature enough to do this.
2999 1998-12-15 Miguel de Icaza <miguel@nuclecu.unam.mx>
3001 * dir.c (link_isdir): Remove unused variable.
3003 Sun Dec 13 18:35:05 1998 Norbert Warmuth <nwarmuth@privat.circular.de>
3005 * screen.c (panel_reload): Don't set panel->selected to zero here,
3006 keep it's value if possible or set it to panel->count - 1 (I disliked
3007 the jumping cursor when deleting files).
3009 1998-12-11 Michael Fulbright <msf@majestic.labs.redhat.com>
3011 * file.c (panel_operate_generate_prompt): Changes the text
3012 for GNOME dialogs. --jrb
3014 1998-12-10 Miguel de Icaza <miguel@nuclecu.unam.mx>
3016 * main.c (try_to_select): We do not need to select the item
3017 manually in this case, as the X code will do this for us.
3019 Fri Dec 11 00:05:50 1998 Paul Sheer <psheer@obsidian.co.za>
3021 * syntax.c, slint.c, color.c, color.h: editor now has its
3022 own color configuration so you can set editor background
3023 colors with MC_COLOR_TABLE.
3025 1998-12-10 Paul Sheer <psheer@obsidian.co.za>
3027 * syntax.c: perl syntax highlighting. syntax highlighting
3028 bug fizes for python and sh.
3030 * edit.c: new method of finding line offsets from line
3031 number (for cooledit for python stuff).
3033 Mon Nov 30 21:10:30 1998 Pavel Machek <pavel@bug.ucw.cz>
3035 * file.c (copy_file_file): minor code beatifulling: replace goto's
3036 with while loops (it is both shorter and nicer :-)
3037 (panel_operate): hopefully done WANT_STALE_DATA right. We really
3038 should kill ftpfs_hint_reread hack soon.
3040 * cmd.c (dirsizes_cmd): report error if you are on non-local
3041 filesystem. (As oposed to silently failing.)
3043 1998-12-07 Miguel de Icaza <miguel@nuclecu.unam.mx>
3045 * screen.c (panel_reload): Set panel->selected to zero here, this
3046 will at least guarantee that we do not try to fetch anything
3049 * main.c: The bar2 is gone as well.
3051 Tue Dec 8 19:19:39 1998 Norbert Warmuth <nwarmuth@privat.circular.de>
3053 * cmd.c (dirsizes_cmd): Fixed possible buffer overflow
3055 1998-12-07 Miguel de Icaza <miguel@nuclecu.unam.mx>
3057 * screen.c (do_enter): Return the value from this.
3059 1998-12-06 Federico Mena Quintero <federico@nuclecu.unam.mx>
3061 * dir.c (link_isdir): Fetch the information from
3062 file->f.link_to_dir, since we already have it.
3064 * dir.h (file_entry): Removed the `cache' field in this structure,
3065 as it was only used for the deprecated Xview version.
3066 Also, removed the `exists' field, as it was not being used anywhere.
3068 * dir.c: Removed all occurrences of file_entry->cache.
3070 * find.c: Removed all occurrences of file_entry->cache.
3072 * panelize.c: Removed all occurrences of file_entry->cache.
3074 * screen.c (do_enter_on_file_entry): New public function that
3075 implements the functionality in do_enter(), but based on a file
3076 entry rather than on a panel.
3077 (do_enter): Use do_enter_on_file_entry() with the selection of the
3078 panel as an argument.
3080 1998-12-04 Miguel de Icaza <miguel@nuclecu.unam.mx>
3082 * cmd.c, tree.c: Updated to the new file.c api.
3084 * file.c: (copy_file_file, copy_dir_dir, move_file_file,
3085 move_dir_dir): Updated to work with the new updating stuff.
3087 * setup.c: New configuration option to compute the totals to be
3090 * file.c (compute_dir_size, panel_compute_totals): New routines to
3091 compute the total ammount of information that is going to be
3094 1998-12-03 Miguel de Icaza <miguel@nuclecu.unam.mx>
3096 * ext.h: GNOME edition uses a different set of .ext files.
3098 * lib/mc-gnome.ext.in: New file with GNOME-specific bindings.
3100 1998-12-02 Miguel de Icaza <miguel@nuclecu.unam.mx>
3102 * GNORBA integration. We now produce two binaries: gmc and
3103 corba-gmc (that way, I dont interfere with other's work).
3105 * Added prototypes, made private functions static, clean up
3106 various silly warnings.
3108 * main.c (main): Removed crufty init_sigfatal code.
3110 * cmd.c (do_link): More slang dependecies are fixed for the X
3113 * keys.h (enum): Moved key definitions here.
3115 * tty.h: MOve towards slang freedom for the GNOME port.
3117 1998-12-01 Jonathan Blandford <jrb@redhat.com>
3119 * file.c (panel_operate_generate_prompt): moved from filegui.c
3121 1998-11-30 Federico Mena Quintero <federico@nuclecu.unam.mx>
3123 * panel.h (WPanel): Added the missing tree/pane/view_table fields
3124 to the Gnome part of the structure.
3126 1998-11-26 Miguel de Icaza <miguel@nuclecu.unam.mx>
3128 * cons.saver.c (main): Make sure stderr is always valid.
3129 (main): Also check that stderr_fd is not -1.
3131 Wed Nov 25 22:16:19 1998 Norbert Warmuth <nwarmuth@privat.circular.de>
3133 * cmd.c (dirsizes_cmd): Quote characters with a special meaning
3134 when passing it to du.
3136 1998-11-23 Federico Mena Quintero <federico@nuclecu.unam.mx>
3138 * dlg.c (dlg_try_hotkey): Removed unused declaration of input_event.
3139 (dlg_key_event): Return 1 if handled the tab key.
3141 * filegui.h: Added prototypes for file_progress_show_{source,target,deleting}().
3143 Sun Nov 22 22:30:50 1998 Norbert Warmuth <nwarmuth@privat.circular.de>
3145 * autogen.sh: replaced "cat *.m4" with a call to aclocal. Concatenate
3146 mc-aclocal.m4 and gettext.m4 to acinclude.m4. The other way round
3147 would have been to add three more m4 files to the replaced cat line
3148 (including cond.m4 from automake-1.3b).
3150 Fixed OBJ_DIR handling.
3152 Sun Nov 15 00:37:58 1998 Pavel Machek <pavel@bug.ucw.cz>
3154 * mad.c (mad_tempnam): needed wrapper for tempnam added
3156 1998-11-17 Miguel de Icaza <miguel@nuclecu.unam.mx>
3158 * dlg.c (destroy_dlg): Do not refresh.
3160 * filegui.c: New file. We keep all of the user interface code for
3161 the text edition in this file now. This should be a per-GUI port
3164 1998-11-11 Federico Mena Quintero <federico@nuclecu.unam.mx>
3166 * panel.h (WPanel): Instead of the "#ifdef GNOME" mess in the
3167 WPanel structure, we now have a single opaque pointer to UI data,
3168 called port_ui. GUI stuff specific to each port should be here.
3169 This is a work in progress.
3171 1998-11-10 Federico Mena Quintero <federico@nuclecu.unam.mx>
3173 * setup.c: Removed the icons_snap_to_grid and
3174 want_transparent_{icons,text} options.
3176 Thu Nov 5 12:10:10 1998 Pavel Machek <pavel@atrey.karlin.mff.cuni.cz>
3178 * file.c (panel_operate): check for null pointer before passing it
3181 Wed Nov 4 17:51:43 1998 Pavel Roskin <pavel_roskin@geocities.com>
3183 * src/findme.h: added from popt-1.2 by RedHat
3185 * src/Makefile.in: appropriate changes to use new popt
3187 Sun Nov 1 20:59:05 1998 Pavel Machek <pavel@bug.ucw.cz>
3189 * file.c (erase_file): translated goto into while loop (it is both
3190 shorter AND cleaner)
3192 * subshell.c (feed_subshell): do NOT print anything if we get
3193 errors/eofs from read(subshell) - this fixes (or at least hides)
3194 nasty bug where typing "exit" on mc prompt prints lots of garbage
3195 and falls into infinite loop. Someone with better knowledge should
3196 read feed_subshell(), and make it handle errors properly. (Why do
3197 we ignore EIO for example?)
3199 Sun Oct 18 22:56:17 1998 Pavel Machek <pavel@bug.ucw.cz>
3201 * view.c: we now rely on sfs to do file decompressing for us. That
3202 has advantage of displaying #ugz at first line, so user knows what
3203 we are doing behind his back
3205 * view.c: fix indentation, fallback to read whole file if mmap fails.
3207 1998-11-01 Federico Mena Quintero <federico@nuclecu.unam.mx>
3209 * setup.c: #ifdef'ed out stuff in the menus that will get changed
3210 as I rewrite the desktop part.
3212 1998-10-30 Miguel de Icaza <miguel@nuclecu.unam.mx>
3214 * layout.c (print_vfs_message): Use g_snprintf instead of
3218 1998-10-30 Sung-Hyun Nam <namsh@lgic.co.kr>
3220 * color.c, slint.c: support transparent background if user use
3221 'default' keyword for background color.
3223 Mon Oct 26 00:31:53 1998 Norbert Warmuth <nwarmuth@privat.circular.de>
3225 * configure.in, Make.common.in: Split CPPFLAGS into CPPFLAGS and
3226 MCCPPFLAGS. The last one contains references to variables which are
3227 not available in every Makefile.in (namely intl/Makefile.in). Without
3228 the split `-I ' was passed to the compiler (the compiler on DU 4.0
3229 interprets -I as "don't search include files in /usr/include").
3231 Thu Oct 22 20:41:50 1998 Norbert Warmuth <nwarmuth@privat.circular.de>
3233 * configure.in (subshell): Don't define inline to be empty
3234 when compiling with non-gcc compiler. AC_C_INLINE (invoked in
3235 AM_GETTEXT_GNU) already defines inline if necessary.
3237 Thu Oct 22 20:41:16 1998 Norbert Warmuth <nwarmuth@privat.circular.de>
3239 * panelize.c (do_external_panelize): Not zeroing some fields
3240 in cpanel led sometimes to segfaults.
3242 Thu Oct 22 20:31:17 1998 Pavel Roskin <pavel_roskin@geocities.com>
3244 * lib/mc.ext.in: *.jar and *.JAR treated like *.zip and *.ZIP
3246 Fri Oct 16 12:10:56 1998 Pavel Machek <pavel@atrey.karlin.mff.cuni.cz>
3248 * cmd.c (quick_chdir_cmd): you must check for return code of
3249 do_cd(). (Fixed error for here, but more such bugs are present in
3250 src/ tree. Or maybe move error checking into do_cd?)
3252 * command.c: warn user if he is pressing enter while on non-local
3253 filesystem. (Prev. behaviour was fail silently to do anything,
3256 Mon Oct 12 22:47:53 1998 Pavel Machek <pavel@bug.ucw.cz>
3258 * file.c (copy_file_file): MCCTL_SETREMOTECOPY is no longer used
3260 * file.c (copy_file_file): do_reget is now correctly done using
3263 Wed Oct 7 22:20:37 1998 Pavel Machek <pavel@bug.ucw.cz>
3265 * file.c: Ask user if (s)he wants to delete incomplete file
3267 Sun Oct 11 20:21:20 1998 Peter Kleiweg <kleiweg@let.rug.nl>
3269 * mfmt.c (main): When there are an even number of empty lines
3270 between messages, all goes well, but when the number of empty
3271 lines between messages is odd, the program fails.
3273 Sun Oct 11 20:11:16 1998 Norbert Warmuth <nwarmuth@privat.circular.de>
3275 * setup.c: Option ftpfs_use_unix_list_options was saved from
3276 and restored to the wrong variable (ftpfs_use_passive_connections).
3278 Mon Oct 5 21:33:14 1998 Norbert Warmuth <nwarmuth@privat.circular.de>
3280 * screen.c (parse_display_format): Don't dereference NULL pointer
3281 when format string is an empty string.
3283 Mon Oct 5 19:59:56 1998 Norbert Warmuth <nwarmuth@privat.circular.de>
3285 * main.c (translate_url_to_new_syntax): Translate ftp:// to an
3286 absolute path instead of a relative path (fix to "hotlist" bug
3287 reported by Andrej). This means we drop the "return to last dir"
3288 feature for ftpfs (when leaving ftpfs with ".." returns to the
3289 directory visited before entering the ftpfs).
3291 Sat Oct 3 00:54:23 1998 Norbert Warmuth <nwarmuth@privat.circular.de>
3293 * gtkedit/Makefile.in (EDITOBJS): removed one wrong \\ (line
3296 Thu Oct 1 18:43:34 1998 Pavel Roskin <pavel_roskin@geocities.com>
3298 * file.c: Commented out search for egrep because execvp() does
3301 * utilunix.c: vfs_uid should not be used if VFS is disabled
3303 Tue Sep 29 17:53:56 1998 Pavel Machek <pavel@atrey.karlin.mff.cuni.cz>
3305 * main.c: removed stupid reference to {sfs,extfs}_which
3307 * screen.c: fixed higlighting to go for longest match if it does
3308 not find exact match. This is so that it works well with vfs (and
3309 needs _NO_ knowledge about vfs layer).
3311 Tue Sep 29 14:02:56 1998 Pavel Machek <pavel@atrey.karlin.mff.cuni.cz>
3313 * layout.c (print_vfs_message): fixed buffer overrun by
3314 vsnprintf. Unfortunately I have no clue how to do this portably.
3316 Tue Sep 29 11:42:32 1998 Pavel Roskin <pavel_roskin@geocities.com>
3318 * setup.c: Corrected code which prevents using icon view by
3319 ports which don't support it
3321 Mon Sep 28 21:55:13 1998 Norbert Warmuth <nwarmuth@privat.circular.de>
3323 * find.c: Changed hotkey of the continue-button (both Chdir and
3326 * Makefile.in: search config.status in builddir and not in rootdir,
3327 i.e. make it compile for builddir != srcdir
3329 Wed Sep 23 14:06:44 1998 Pavel Machek <pavel@atrey.karlin.mff.cuni.cz>
3331 * src/file.c: Made file.c use new O_LINEAR mode (so copying from
3332 ftp works nicely, again)
3334 Fri Sep 18 14:15:43 1998 Pavel Roskin <pavel_roskin@geocities.com>
3336 * src/mad.c: All messages are sent to stderr and terminate with \r\n
3338 * src/hotlist.c: Harmless memory leak fixed
3340 * xv/Makefile.in, xv/xvmain.c, xv/xvscreen.c: Minor fixes to
3341 make compilation of the XV port possible (currently without
3344 Thu Sep 17 07:32:23 1998 Norbert Warmuth <k3190@fh-sw.de>
3346 * Makefile.in: After creating symlinks invoke another instance of
3347 make to build libvfs.a. Otherwise make will not know how to build
3348 the object files if symlinks have been created.
3349 Added target cleansourcelinks (invoked with make distclean).
3351 Tue Sep 15 22:41:24 1998 Paul Sheer <psheer@obsidian.co.za>
3353 * edit.c, editwidget.c, gtkedit.c: fixed segfault when trying to
3354 edit a non-file under gmc.
3356 Tue Sep 15 21:52:00 1998 Norbert Warmuth <k3190@fh-sw.de>
3358 * mc.hlp, doc/mc.1.in, doc/mc.sgml: updated my EMail address
3360 Tue Sep 15 20:51:42 1998 Norbert Warmuth <k3190@fh-sw.de>
3362 * setup.c: save and restore new global variable/option
3363 ftp_use_unix_list_options
3365 Tue Sep 15 01:02:34 1998 Paul Sheer <psheer@obsidian.co.za>
3367 * gtkedit: Directory added. This directory contains all the editor
3368 code modified to work with gnome. Mcedit now works properly under
3369 gnome with a slightly reduced set of features.
3371 * gscreen.c gscreen.h screen.c: Modified to respond to F4 on a file
3372 and start the new gtkedit internal editor.
3374 1998-09-14 Norbert Warmuth <k3190@fh-sw.de>
3376 * file.c (move_dir_dir): Fixed severe bug reported by Andrew Pechenov
3377 <zx80@demo.ru> (losing files when moving directories cross filesystem
3378 boundaries): make sure erase_list is emptied always not only when we
3381 Sat Sep 12 02:59:43 1998 Timur Bakeyev <mc@bat.ru>
3383 * screen.c: Xtry_to_select() Remove extfs hack to the main.c. Change
3384 for() cycle to the x_basename() call (Thanks to Pavel Roskin).
3385 Add (key_callback) do_enter() to prevent warnings.
3387 * main.c: Rename cd_try_to_select() to the get_parent_dir_name(). Now
3388 it process VFS postfixes too. Reduced number of loops against prev hack.
3390 Fri Sep 11 15:27:59 1998 Pavel Machek <pavel@ucw.cz>
3392 * screen.c: make cd .. from extfs file highlight it
3394 Tue Sep 8 13:10:32 1998 Pavel Roskin <pavel_roskin@geocities.com>
3396 * autogen.sh: Don't destroy aclocal.m4 if "macros" directory
3399 * layout.c: Use stdout instead of stderr in set_hintbar()
3401 Mon Aug 31 12:40:29 1998 Pavel Machek <pavel@ucw.cz>
3403 * cmd.c: added view_file_cmd which asks user which file to view -
3404 _very_ usefull with vfs (now you can browse web with mc: try
3405 /#url:http:||atrey.karlin.mff.cuni.cz|~pavel#uhtml)
3407 Thu Aug 27 19:52:45 1998 Pavel Roskin <pavel_roskin@geocities.com>
3409 * Make.common.in: Don't define VERSION anymore
3411 * configure.in: this is the right place for VERSION definition
3413 * acconfig.h: does not include file "VERSION" anymore
3415 * config.h.in: rebuilt by autoheader
3417 * VERSION: removed from CVS and added to .cvsignore since it
3418 is rebuilt every time as configure is run
3420 1998-08-20 Raja R Harinath <harinath@cs.umn.edu>
3422 * mad.h: Include stdlib.h/malloc.h first, to prevent prototypes
3423 from being clobbered by the subsequent macro defines.
3425 Wed Aug 12 15:56:46 1998 Pavel Roskin <pavel_roskin@geocities.com>
3427 * edit.h: added "../" before some includes to avoid unnecessary
3428 "-I" options for the PC port makefiles.
3430 Sun Aug 9 22:39:12 1998 Janne Kukonlehto <jtklehto@paju.oulu.fi>
3432 * mad.h (calloc): Added parentheses around the arguments as
3433 suggested by Steef Boerrigter <sxmboer@sci.kun.nl>.
3435 Fri Jul 31 09:04:35 1998 Pavel Roskin <pavel_roskin@geocities.com>
3437 * syntax.c: makefile* will be highlighted as Makefile*
3439 1998-07-30 Miguel de Icaza <miguel@nuclecu.unam.mx>
3441 * main.c (translated_mc_chdir): Quick hack to make the old
3442 url-like pathnames to be used on the command line.
3444 1998-06-22 T.E.Dickey <dickey@clark.net>
3446 * keyxdef.c: Fix for compiling with ncurses.
3448 Fri Jul 24 00:44:37 1998 Tom Tromey <tromey@cygnus.com>
3450 * mc-local.m4 (AC_STRUCT_LINGER): Moved into macros/linger.m4.
3451 * autogen.sh: Include linger.m4 in aclocal.m4.
3452 * Makefile.in (GNOME_M4_FILES): Include linger.m4.
3454 Thu Jul 23 22:44:16 1998 Tom Tromey <tromey@cygnus.com>
3456 * Makefile.in (aclocal.m4): Depend on all source files. Include
3457 gnome-vfs.m4 and gnome-undelfs.m4.
3458 (GNOME_M4_FILES): New macro.
3459 * autogen.sh: Include gnome-vfs.m4 and gnome-undelfs.m4 in
3461 * configure.in: Use GNOME_VFS_CHECKS and GNOME_UNDELFS_CHECKS
3462 macros instead of in-line checks. Create vfs/Makefile from
3465 Thu Jul 23 19:49:12 1998 Pavel Roskin <pavel_roskin@geocities.com>
3467 * hotlist.c: corrected layout of the warning which appears
3468 if ~/.mc doesn't exist. Appropriate changes in translations.
3470 Wed Jul 15 00:41:01 1998 Paul Sheer <psheer@obsidian.co.za>
3472 * edit.c, editwidget.c, * syntax.c: Syntax
3473 editdraw.c, editmenu, editcmd.c: highlighting for Pascal
3474 Added column text highlighting added.
3475 and block movements.
3477 1998-07-04 Carsten Schaar <nhadcasc@fs-maphy.uni-hannover.de>
3479 * main.c (main): 'session_management_setup' will be called after
3482 Wed Jun 18 Pavel Machek <pavel@ucw.cz>
3484 * i18n.h: we do not want i18n in case of compiling standalone
3487 Fri Jun 5 23:34:20 1998 Timur I. Bakeyev <timur@comtat.kazan.ru>
3489 * screen.c (file_entry_color): take care about BSD core dumps
3490 which have names program.core instead of core
3492 Mon Jun 1 15:41:20 1998 Norbert Warmuth <k3190@fh-sw.de>
3494 * main.c (translate_url_to_new_syntax): translate the common
3495 ftp url syntax to the syntax used by the new vfs code.
3497 (_do_panel_cd): First translate the path if necessary. This makes
3498 it possible to enter ftp://host on the commandline and in the
3499 directory hotlist. We might need to move the translation code
3500 to the vfs layer if there are other places where we want to enter
3503 Mon Jun 1 12:33:08 1998 Alexander V. Lukyanov <lav@yars.free.net>
3505 * configure.in: allowed to use `configure --with-included-gettext'
3506 on systems (like solaris) that have their own libintl
3508 1998-05-31 Miguel de Icaza <miguel@nuclecu.unam.mx>
3510 * complete.c (filename_completion_function): Use the vfs routines
3511 for name completion.
3513 1998-05-31 Jakub Jelinek <jj@ultra.linux.cz>
3515 * complete.c (complete_engine): Fix completions.
3517 Sun May 31 10:23:01 1998 Norbert Warmuth <k3190@fh-sw.de>
3519 * key.c (define_sequence): If a sequence clashes the last
3520 definition made will be used. This makes it possible to override
3521 wrong definitions in terminfo/termcap database with learn keys (or
3522 the appropriate entries in mc.lib and ~/.mc/ini).
3524 * widget.c (show_hist): Don't display the listbox partly
3525 off screen (the left panel's history started in column - 2).
3527 * keyxdef.c: include tty.h instead of myslang.h as suggested by
3528 Tamasi Gyorgy <gt_cosy@usa.net>
3530 Fri May 29 15:41:19 1998 Alexander V. Lukyanov <lav@yars.free.net>
3532 * widget.c (update_input): this patch allows entering 8-bit
3533 characters in input fields without screwing attributes. (the
3534 same old sign extension...)
3536 Wed May 27 22:23:48 1998 Ed Cogburn <ecogburn@greene.xtn.net>
3538 * lib/xterm.ti: The 'xterm-color' definition needs 'sgr0'. The tic
3539 program from ncurses 4.2 doesn't like the xterm.ti file that comes
3542 Wed May 27 15:29:01 1998 Alexander V. Lukyanov <lav@yars.free.net>
3544 * key.c (get_key_code): characters with high bit set were input
3545 as 0x80 char when use_8th_bit_as_meta was set
3547 1998-05-25 Miguel de Icaza <miguel@nuclecu.unam.mx>
3549 * ext.h (MC_USER_EXT): New name for the per-user extension file
3550 (this needs redoing to concatenate this + the system stuff instead
3551 of the overwrite stuff we have now). Now it is called the ~/.mc/ext-n
3553 Mon May 25 23:32:35 1998 Norbert Warmuth <k3190@fh-sw.de>
3555 * editdraw.c (print_to_widget): Ifdef'd SLang specific code in order
3556 to make it compile with ncurses. Syntax highlighting in the
3557 internal editor is already disabled when SLang isn't used.
3559 1998-05-24 Miguel de Icaza <miguel@nuclecu.unam.mx>
3561 * widget.c (port_region_marked_for_delete): New per-port
3562 piece of code: Provides a way for good selection killing.
3564 Sun May 24 02:45:03 1998 Norbert Warmuth <k3190@fh-sw.de>
3566 * utilunix.c, util.h (errno_dir_not_empty): deleted
3568 Sat May 23 22:29:57 1998 Norbert Warmuth <k3190@fh-sw.de>
3570 * file.c (check_dir_is_empty): New function which takes a path and
3571 returns -1 on error, 1 if there are no entries besides "." and
3572 ".." in the directory path points to, 0 else. This function
3573 actually opens and reads the directory and doesn't do tricks we
3574 used to do with rmdir.
3576 * file.c (erase_dir, erase_dir_iff_empty): Use check_dir_is_empty
3577 to detect non empty directories. The old code tried to remove the
3578 directory and decided on errno whether the failure of rmdir was
3579 caused by a non empty directory or whether there was a different
3581 Unfortunatly not every filesystem sets errno to EDIRNOTEMPTY if
3582 you try to delete a non empty directory. Namely the linux user
3583 space nfs server sets errno to EIO, Suns nfs server sets it to
3584 EEXIST and the AIX nfs server sets it to ??? (Steve reported
3585 problems on AIX so I guess AIX sets errno to a value we currently
3588 1998-maj-18 Tamasi Gyorgy (gt_cosy@usa.net)
3590 * lib/mc.menu: 'Z' on 'tar.Z' and 'tar.z' files: '%f' -> '$1'.
3592 * lib/mc.ext.in.qnx.diff, lib/mc.menu.qnx.diff (QNX): modified
3593 'mc.ext.in' (tar -t: output to stderr); modified 'mc.menu' (tar is
3594 not GNU tar: doesn't know '-z'); support for '*.tar.F':
3595 'freeze'-compressed tar files [No automatic configure/install
3596 implemented: patches must be applied before running 'configure'
3597 (mc.ext.in.qnx.diff: this patch can be not only QNX-specific...)]
3599 * lib/Makefile.in: 'mc.ext.in.qnx.diff' and 'mc.menu.qnx.diff' added
3604 SLTT_TRANSP_ACS_PATCH dependant code:
3606 The problem: some terminals (QNX/qansi*, SCO OS5/ansi [?]) map the
3607 whole upper half of the ASCII table to the lower half, when
3608 alt-char-set is activated with the smacs/as string-sequence. This
3609 means, that if 0 <= ch < 128 written to the terminal, it will be
3610 translated to (ch+128) automatically by the terminal: so not only
3611 the line-drawing characters can be written, when the alt-char-set
3612 is activated. It implicitly means, that space, NL, CR, etc.
3613 characters (exactly: anything besides the "standard" line drawing
3614 characters) can not be written directly to the terminal, when the
3615 alt-char-set is activated, because writing these characters
3616 doesn't cause an implicit/temporary switching-back to the standard
3619 The original code in SLang assumes that space, NL, CR, etc. can be
3620 printed when alt-char-set is activated. If SLTT_TRANSP_ACS_PATCH
3621 is defined, the modified code will not use this assumption.
3622 [Remark: the patch-code is not the most exact solution, but
3625 QNX_QANSI_SLANG_COMPAT_ACS_PATCH dependant code:
3627 A more OS/terminal-specific solution for the problem mentioned
3628 above (->SLTT_TRANSP_ACS_PATCH).
3630 If QNX_QANSI_SLANG_COMPAT_ACS is defined, the default smacs/sa,
3631 rmacs/ae, acsc/ac [and sgr/sa, if it would be used!] command
3632 sequences will be replaced internally with the "old style"
3633 (pre-QNX 4.23) sequences in case of QNX/qansi terminals. Using
3634 these optional command sequences the terminal remains compatible
3635 with the original SLang code (without using the workaround-code
3636 enabled by defining SLTT_TRANSP_ACS_PATCH).
3640 Currently SLTT_TRANSP_ACS_PATCH is not auto-configured by
3641 'configure'. (Must be manually defined...)
3643 There is some (QNX-specific) auto-configuration hand-coded in the
3646 #ifdef SLTT_TRANSP_ACS_PATCH
3647 # if defined(__QNX__) && defined(QNX_QANSI_SLANG_COMPAT_ACS)
3648 # undef SLTT_TRANSP_ACS_PATCH
3651 # if defined(__QNX__) && !defined(QNX_QANSI_SLANG_COMPAT_ACS)
3652 # define QNX_QANSI_SLANG_COMPAT_ACS 1
3656 * slang/slutty.c: "newtty.c_iflag &= ~(ECHO | INLCR | ICRNL);"
3657 ECHO(0x08) is a c_lflag bit, it means PARMRK(0x08) in c_iflag. (!?!)
3659 * src/file.c: 'do_reget' can be extern if (USE_VFS && USE_NETCODE),
3662 * src/find.c (search_content()): Variable 'i' "must be" 'int', not
3663 'char'. ["i == -1": (buggy?) WCC 10.6 doesn't convert automatically
3664 (int)(-1) to (char)(-1) (GCC does), so "comparison result always 0"
3665 warning produced. It is cleaner to define 'i' as 'int', than cast
3666 '-1' to 'char', because 'read()' returns 'int'.]
3668 * src/key.c (init_key()): Call load_xtra_key_defines() and clear
3669 'use_8th_bit_as_meta' by default under QNX, if a 'qnx*' terminal
3670 detected. (A saved config file (mc.ini) can override it later...)
3672 * src/key.h: Declare load_xtra_key_defines().
3674 * src/keyxdef.c: Provides a method to define some platform-specific
3675 additional key mappings. (e.g. QNX terminals can handle most of
3676 META-? combinations as ALT-?...) ('keyxdef.c' currently not listed
3679 * src/layout.c: TIOCGWINSZ must be available (so <sys/ioctl.h> (?)
3680 included), because window-resizing code doesn't work, if not defined.
3682 * src/main.c: 'print_usage()' is reserved name in the QNX run-time
3683 library, so 'print_usage()' renamed to 'print_mc_usage()'
3685 * src/mouse.c (QNX): ncurses 1.9.8a ported to QNX doesn't provide the
3686 'SP' pointer as a global symbol in the library, so the keyok()
3687 emulation currently can not be used under QNX (4.24 & Watcom C 10.6
3690 * src/slint.c (QNX): 'qansi*' terminals added to the color_terminals[]
3693 * src/subshell.c, src/utilunix.c (QNX): include <unix.h> to get
3694 prototype for exec*()!!! [See README.QNX/Section 1.4 about the
3695 dangerous "No prototype for <function>" warnings emitted by Watcom C,
3696 if <function> is a 'printf()'-style function having variable number
3697 of arguments and you compile your source with the default register
3698 calling convention!!!]
3700 * Makefile.in: 'keyxdef' module added to SRCS and OBJS.
3702 * <mc-root>/README.QNX: QNX-specific notes.
3704 * <mc-root>/configure (line 3369), <mc-root>/configure.in (line 88):
3705 'test x$CCOPTS = x;' modified to 'test "x$CCOPTS" = x;'
3707 * <mc-root>/Makefile.in: README.QNX added to DISTMAIN.
3709 Thu May 21 00:09:45 1998 Norbert Warmuth <k3190@fh-sw.de>
3711 * menu.c (menubar_event): Don't set menubar->selected to the
3712 invalid value -1. Fix for the bug reported by root@liepa.soften.ktu.lt
3714 * menu.c (menubar_drop_compute): removed the check for inrange
3715 items which isn't necessary any longer.
3717 Wed May 20 16:27:56 1998 Norbert Warmuth <k3190@fh-sw.de>
3719 * widget.c (history_put): input line history was defunct because
3720 there was an #ifndef where an #ifdef should be.
3721 Btw. PORT_WIDGET_WANTS_HISTORY seems incomplete because a lot of
3722 history code is included even when this define is undefined.
3724 1998-05-19 Tamasi Gyorgy <gt_cosy@usa.net>
3726 * src/*: Until I get a better ChangeLog: Tamasi's port of the
3729 1998-05-19 Alexander Lukyanov <lav@yars.free.net>
3731 * Makefile.in: Distirbution fix so that people are not forced to
3734 1998-05-19 Miguel de Icaza <miguel@nuclecu.unam.mx>
3736 * ext.c: Memory leak fixed.
3738 Mon May 18 22:24:09 1998 Norbert Warmuth <k3190@fh-sw.de>
3739 * lib/mc.ini.in: s/reges/regex/
3741 * main.c (process_args): return void, the return value was only
3742 used once but wrong (-h displayed help twice).
3743 (handle_args): -h: don't display help twice
3744 (print_usage): Don't print program name and version, that's
3745 already done by version(0).
3747 * menu.c (menubar_paint_idx): Highlight Hotkeys also on slow
3748 terminals (hotkeys were not displayed at all).
3750 1998-05-18 Miguel de Icaza <miguel@nuclecu.unam.mx>
3752 * menu.c (menubar_drop_compute): Check for inrange items.
3754 1998-05-15 Miguel de Icaza <miguel@nuclecu.unam.mx>
3756 * color.c (init_colors): Provide X-only version of color
3759 Thu May 14 01:56:11 1998 Norbert Warmuth <k3190@fh-sw.de>
3761 * configure.in: Don't add -lintl to LIBS when included gettext is
3762 used (further checks for libraries would fail because libintl.a
3763 isn't build, yet). Instead use and substitute LINTL.
3765 * Makefile.in (OURLIBS): add @LINTL@
3767 Tue May 12 17:45:49 1998 <psheer@obsidian.co.za>
3769 * syntax.c: yet more minor modifications.
3771 1998-05-11 Miguel de Icaza <miguel@nuclecu.unam.mx>
3773 * main.c: New default: auto-save setup.
3775 * screen.c (move_right, move_left): Add support for icon-view movement.
3777 1998-05-09 Miguel de Icaza <miguel@nuclecu.unam.mx>
3779 * setup.c (panel_load_setup): On non-icon editions, fall back to
3782 Sun May 10 13:27:50 1998 Norbert Warmuth <k3190@fh-sw.de>
3784 * widget.c (handle_char): Don't try to to delete default text in
3785 input widget more than once. Right after MC's start copy_filename
3786 (ESC Enter) failed because a flag wasn't cleared while characters
3787 were stuffed into the commandline (Andrej reported this bug).
3789 * main.c (copy_readlink): usr mc_readlink instead of readlink
3791 * file.c: Changed default for the copy/move option "dive into
3792 subdir if exists" to off (note: this was only possible after the
3795 (copy_dir_dir): Activated the previously uncommented code which
3796 implements "Dive into subdirs". Even when there's no case where we
3797 actually would like that behaviour it is a documented feature.
3798 Though I don't wanted to change the default behavour. Hence the
3801 (file_mask_defaults): set dive_into_subdirs
3803 (file_mask_dialog): Fix for debian Bug #20727: Move operation with
3804 "[ ] Dive into subdir if exists" and destination filename not
3805 wildcarded. If destination is an existing directory then files
3806 will be moved into this directory. If destination is not an
3807 existing directory then src file will be renamed (one file
3808 selected) or an error will be displayed (more than one file
3811 (file_mask_dialog): made the option "Using shell patterns" local
3812 to the current copy/move operation, i.e. this option is always
3813 initialized with the global options's value. Previously it affected
3814 the global Options/Configuration/shell Patterns.
3815 Another possiblilty would be to make the global option a default
3816 option on startup and keep changes in the copy/move dialog
3817 (without saving these changes with save setup).
3819 * setup.c: Don't save and load options which can be changed
3820 outside the options menu. For example I don't like that
3821 preserve_uid_gid and dive_into_subdirs from the copy/move dialog
3822 are saved and restored (strange, what about the other options from
3824 It would be much cleaner to make these option read-only. This way
3825 one could edit ~/.mc/ini to provide default option setting on
3826 startup and "Save setup" wouldn't have side effects outside the
3829 Sun May 10 13:24:20 1998 Norbert Warmuth <k3190@fh-sw.de>
3831 * doc/mc.1.in, doc/mc.sgml, mc.hlp: Updated to reflect new default
3832 for dive into subdirs.
3834 Sun May 10 13:21:45 1998 Norbert Warmuth <k3190@fh-sw.de>
3836 * edit/syntax.c: Disable debug messages on stderr.
3838 * edit/edit.h: Added missing _()
3840 1998-05-06 Miguel de Icaza <miguel@nuclecu.unam.mx>
3842 * layout.c (flag_winch): Propagate the window change to the slave
3843 pty even when not running our event loop. The resize_subshell
3844 routine is thread safe.
3846 * dlg.c (update_cursor, dlg_broadcast_msg_to): Do not send
3847 messages if no widgets are on the Dlg_head, this happens now with
3848 the gmc code, as we can have all of the windows shut down.
3850 Wed May 6 13:46:37 1998 Paul Sheer <psheer@obsidian.co.za>
3852 * syntax.c: more bug fixes.
3854 1998-05-04 Miguel de Icaza <miguel@nuclecu.unam.mx>
3856 * view.c (view_quit_cmd): Use dlg_stop.
3858 * main.c (ctl_x_cmd): Implement ctl-x handling as a state of the
3859 key press events. Drop the usage of mi_getch to acomplish this
3861 (midnight_callback): Deal with the current map depending on the
3864 Mon May 4 10:21:31 1998 Norbert Warmuth <k3190@fh-sw.de>
3866 * background.c (message_1s1d): the unprocessed string with %d was
3867 passed to message_1s; fixed small memory leak
3869 * widget.c (button_callback): WIDGET_CURSOR: make cursor position
3870 dependend from button type (fixes the off by one bug in advanced
3873 * file.c (copy_file_file): Schedule deletion of short target file
3874 only when we created or truncated the target file and not already
3875 when we decided to overwrite an existing file.
3877 1998-05-03 Miguel de Icaza <miguel@nuclecu.unam.mx>
3879 * boxes.c (task_cb): Use kill, not INT, as we are catching INT in
3882 Sat May 2 14:07:05 1998 Paul Sheer <psheer@obsidian.co.za>
3884 * setup.c: ALT('H') now shows a directory history - that
3885 ESC SHIFT-h or ALT-SHIFT-h
3887 Fri May 1 17:45:58 1998 Paul Sheer <psheer@obsidian.co.za>
3889 * syntax.c: initial support for LaTeX 2.09 files added,
3891 * syntax.c: some minor bug fixes. and reorganisation
3892 of context and keyword priorities.
3894 Fri May 1 11:24:21 1998 Paul Sheer <psheer@obsidian.co.za>
3896 * syntax.c: syntax highlighting segfaults when editing a binary
3899 Thu Apr 30 12:23:50 1998 Alex Tkachenko <alex@bcs.zp.ua>
3901 * src/file.c: lot of i18n of file Copy/Move/Delete operations. Maintainers
3902 of message catalogs please notice introduced op_names1 and formats for
3905 * src/boxes.c: i18n of background jobs control and quick cd
3908 * src/menu.c (menubar_arrange): resizing of menubar upon changes of
3909 window size is now controlled by preprocessor symbol RESIZABLE_MENUBAR
3910 (now it's off by default, as requested in mailing list). If it is off,
3911 menubar items are separated with fixed number of spaces (3).
3913 * src/layout.c, edit/editwidget.c: calls to menubar_arrange ifdef'ed
3916 1998-04-30 Miguel de Icaza <miguel@nuclecu.unam.mx>
3918 * main.c (parse_an_arg): GNOME edition keeps track of various
3919 --geometry and various directories passed.
3921 1998-04-29 Miguel de Icaza <miguel@nuclecu.unam.mx>
3923 * main.c (update_panels): Great API simplification. update_panels
3924 only cares about the contents of the current panel, every other
3925 panel keeps the current selection (this was the behaviour
3928 update_panels can be provided in a per-port fashion as well.
3930 Wed Apr 29 03:06:09 1998 Paul Sheer <psheer@obsidian.co.za>
3932 * syntax.c: some optimisations, as well as support for
3933 syntax highlighting of Makefiles and ChangeLog files.
3934 Fixed some syntax highlighting bugs. All C and C++
3937 Tue Apr 28 06:11:08 1998 Norbert Warmuth <k3190@fh-sw.de>
3939 * view.c (toggle_wrap_mode, toggle_hex_mode): Force recalculation
3940 of bottom_first (we mustn't use an already calculated and cached
3941 value because it is invalid for the new mode and the End key would
3942 not move to the end of the file).
3944 * configure.in: Renamed the option `--with-our-slang' to
3945 `--with-included-slang' (this one looks better because we also
3946 have an `--with-included-gettext').
3947 Make the option `--with-ext2undel' recognice a given path.
3949 * cmd.c (view_file_at_line): In plain view (F13) set the default
3950 magic flag to zero in order to view the file content unprocessed
3951 (esp. don't uncompress files if they are compressed). The
3952 view_simple_cmd got broken when the default magic flag in view.c
3953 was changed from 0 to 1.
3955 * view.c (do_view_init, goto_line): Set wrap mode temporary off
3956 to make goto line number work, i.e. `line number' now always means
3957 line number in file and not line number on screen (in wrap mode
3958 one long line wrapped once is displayed in two lines on the screen).
3959 That's important when the viewer is invoked from the find file
3960 dialog to display even in wrap mode approxiamtly the part of the
3961 file where we found the content we searched for.
3963 (move_forward2): In wrap mode lines were sometimes counted wrong
3964 causing cursor up to move more than one line.
3966 (move_backward2): Fixed the movement in wrap mode.
3968 (change_viewer): Always re-init viewer when we have a filename,
3969 i. e. if the viewer is invoked with simple_view_cmd then we can switch
3970 with the F8 key between unprocessed file content und uncompressed
3972 (view_init): re-init view also when magic flag was altered
3974 1998-04-27 Miguel de Icaza <miguel@nuclecu.unam.mx>
3976 * screen.c (is_a_panel): Added a routine to determine if a widget
3979 1998-04-27 Miguel de Icaza <miguel@nuclecu.unam.mx>
3981 * screen.c (file_entry_color): Check if fe->fname has something.
3983 Sun Apr 26 00:21:12 1998 Norbert Warmuth <k3190@fh-sw.de>
3985 * slint.c: Applied the patch from Bill Nottingham <wen1@cec.wustl.edu>
3986 to make it link against SLang >=1.0.
3987 I reviewed the diffs to the part of SLang we use and there are no
3988 further changes to MC necessary (one function's return value
3989 changed it's meaning but we don't use this return value).
3991 * configure.in: Undone the change which prevented linkage against
3994 Sat Apr 25 13:41:43 1998 Paul Sheer <psheer@obsidian.co.za>
3996 * edit.h, syntax.h: some optimisations to improve syntax
3999 1998-04-24 Miguel de Icaza <miguel@nuclecu.unam.mx>
4001 * color.h: Move the CTYPE definition
4003 Fri Apr 24 16:43:25 1998 Paul Sheer <psheer@obsidian.co.za>
4005 * main.h, setup.c: editor_syntax_highlighting option added
4008 Fri Apr 24 14:54:06 1998 Paul Sheer <psheer@obsidian.co.za>
4010 * syntax.c: added. this files reads ~/.cedit/mcsyntax and
4011 processes generic rules for syntax highlighting of different
4012 file types. Syntax highlighting does not store an attribute byte
4013 for each byte of the edit buffer. Rather, it calculates colours
4014 on the fly, with an optimised algorithm, as the text is being
4017 * edit.c, edit.h, editwidget.c, editdraw.c: changes to facilitate
4018 syntax highlighting.
4020 * editoptions.c: dialog box updated with a syntax highlighting
4023 * slint.c: new function alloc_color_pair(). This allocates a new
4024 color index. init_pair() itself now records the last colour index
4025 so that colours can be added on to the end of the colour list
4026 with alloc_color_pair().
4028 * slint.c: new function try_alloc_color_pair() returns a new index
4029 for a color with named fg and bg. Checks if that named colour
4030 already exists before setting a new index.
4032 1998-04-23 Miguel de Icaza <miguel@nuclecu.unam.mx>
4034 * user.c (execute_menu_command): Create temporary file exclusively
4037 * main.c (do_execute), utilunix.c (my_system), gutil.c, ext.c:
4038 Changed the way we execute programs. Now a new set of flags exist
4039 that indicates how the execution is done. In ports that execute
4040 by sending the process to background, when executing temporary
4041 files, we have to remove the files after the child process has
4042 finished executing the code not after the calling do_execute.
4044 * ext.c (exec_extension): Create temporary file exclusively.
4046 Mon Apr 20 01:32:20 1998 Norbert Warmuth <k3190@fh-sw.de>
4048 * configure.in: Don't try to link MC against SLang >= 1.0. I will
4049 remove this restriction when I'm sure that it's save to use the new
4050 version (the documentation to SLang mentions some changes of
4053 1998-04-16 Miguel de Icaza <miguel@nuclecu.unam.mx>
4055 * file.h: Added prototype for copy_dir_dir.
4057 * file.c (real_do_file_error): use the proper flags, this is not a
4058 D_INSERT dialog box, for what it is worth. Important bug fix.
4060 * utilunix.c (get_owner): Declare.
4062 * widget.h: Added various missing prototypes for the X edition.
4063 * view.h: Added various missing prototypes for the X edition.
4064 * widget.c (x_radio_toggle): New per-port variable: PORT_HAS_RADIO_TOGGLE
4066 1998-04-15 Miguel de Icaza <miguel@nuclecu.unam.mx>
4068 * screen.c (GT): Assign two spaces for the minimum size of the
4069 "type" field for the GNOME edition. This gives some extra space
4070 for the icon that gets displayed.
4072 * dlg.c (remove_widget): New function: used to remove a widget
4073 from an existing Dlg_head;
4074 (destroy_widget): Destroy a specific Widget.
4075 (add_widgetl): Extended to deal with the fact that a running
4076 Dlg_head can become empty.
4078 * panelize.c (l_call): Update the input line every time the user
4079 selects the entry with the mouse (pretty common in the gnome
4082 * hotlist.c (add_new_group_input): Removed an extra field that was
4085 * find.c (find_parameters): Tree button is gone for gnome until we
4086 get the tree function working on gnome.
4088 * cmd.c (save_setup_cmd): Per Elliot's suggestion, do not pop up a
4089 dialog box to inform the user about the saved setup.
4091 1998-04-15 Pavel Machek <pavel@elf.ucw.cz>
4093 * cmd.c: Report failed chdir attempts.
4095 Wed Apr 15 10:48:41 1998 Alex Tkachenko <alex@bcs.zp.ua>
4097 * src/hotlist.c: changes to hotlist boxes i18n.
4099 * src/panelize.c: changes to panelize boxes i18n.
4101 * src/wtools.c (query_dialog): Take care about possible '&' in
4102 button names while calculating window sizes and button positions.
4104 1998-04-15 Miguel de Icaza <miguel@nuclecu.unam.mx>
4106 * screen.c (string_file_nlinks): The buffer was too small and we
4107 were overwriting parts of it.
4109 * subshell.c (do_subshell_chdir): Memory leak fix.
4111 * find.c (do_search): Do not use undefined order of evaluation.
4113 * user.c: Do not use undefined order of evaluation.
4115 * dlg.c (init_dlg): Do init the default return value.
4117 Sun Apr 12 03:09:17 1998 Norbert Warmuth <k3190@fh-sw.de>
4119 * cmd.c (view_other_cmd): #ifdef'd application_keypad_mode and
4120 numeric_keypad_mode (don't include it in non text editions)
4122 Sun Apr 12 02:48:26 1998 Norbert Warmuth <k3190@fh-sw.de>
4124 * xv/xvscreen.c: removed duplicate (conflicting) definition
4127 Sun Apr 12 02:24:57 1998 Norbert Warmuth <k3190@fh-sw.de>
4129 * text.c (edition_post_exec), cmd.c (view_other_cmd): Don't change
4130 the keypad mode when we don't use the alternate plus minus. Pavel
4131 forgot an if-clause when he replaced the escape sequences (or
4132 another point of view: I forgot one if-clause at different place).
4134 Fri Apr 10 17:35:23 1998 Philippe De Muyter <phdm@macqel.be>
4136 * configure.in (AC_NCURSES): When checking for library location,
4137 put -L option before -l option, not after.
4139 Fri Apr 10 10:35:06 1998 Norbert Warmuth <k3190@fh-sw.de>
4141 * file.c (file_mask_dialog): When the shell patterns option was
4142 off source_mask was freed twice.
4144 1998-04-10 Marc Ewing <marc@redhat.com>
4146 * panel.h: added up_b
4148 1998-04-08 Miguel de Icaza <miguel@nuclecu.unam.mx>
4150 * widget.c (update_input): Set the used flag early in update_input
4151 to allow X widget to catch the right value
4153 * screen.c (do_enter): Return the status for the operation.
4155 * main.c (main): Sigh. This was hard. I added support for argp.
4156 Right now we support both argp for the GNOME edition and popt for
4157 the other editions. I will remove popt support in the future and
4160 * dlg.c (add_widgetl): Adding widgets to an already running dialog
4161 had some flaws. Fix this.
4163 Wed Apr 8 11:15:29 1998 Alex Tkachenko <alex@bcs.zp.ua>
4165 * src/find.c: changes to find_parameters/find_file i18n.
4167 * src/widget.c: new function introduced, button_scan_hotkey();
4168 button_new() and button_set_text() fixed to use mentioned function.
4170 * src/key.[ch], src/dlg.c: changes to make recognition of ESC char as
4171 ALT(c) possible for 8-bit chars. (By replacing 'A'/'Z' comparisons with
4172 call to isalpha() in the way proposed by Norbert).
4174 * src/boxes.c: changes to display box i18n
4176 * src/learn.c: changes to learn key dialog i18n
4178 1998-04-07 Miguel de Icaza <miguel@nuclecu.unam.mx>
4180 * main.c (update_one_panel_widget): New routine: Updates a panel
4181 based on the widget, not the index. Used by the GUI versions.
4183 * find.c (find_file): Cancel idle tasks before we destroy the find
4186 * dlg.c (destroy_dlg): Call x_destroy_dlg_start, a new hook that
4187 is invoked to allow the frontend code to prepare for dialog
4188 destruction. Only the Gnome edition is using this: it uses this
4189 to hide the dialog and avoid flickering.
4191 * main.c: dtterm also has mouse support.
4193 1998-04-06 Miguel de Icaza <miguel@nuclecu.unam.mx>
4195 * wtools.c (quick_callback): Process DLG_KEY events on X.
4197 * utilunix.c (max_open_files): new routine; Used to figure out
4198 the number of available file descriptors.
4200 Sat Apr 4 00:16:49 1998 Alex Tkachenko <alex@bcs.zp.ua>
4202 * src/layout.c: changes to layout dialog box i18n
4204 * src/option.c: changes to configure box i18n
4206 * src/cmd.c: added N_() macro for machine_str
4208 * src/wtools.c (real_input_dialog_help): ok/cancel buttons are places
4209 symmetrically spaced relatively to center of the box. It produces
4210 nicer appearance with i18n (IMO :)
4212 * src/boxes.c (confirm_box): i18n stuff added.
4214 Mon Apr 6 07:48:22 1998 Pavel Roskin <pavel_roskin@geocities.com>
4216 * Makefile.in: "make dist" works with bash 1.x again
4218 Fri Apr 3 05:23:20 1998 Alex Tkachenko <alex@bcs.zp.ua>
4220 * configure.in: ALL_LINGUAS test added, to allow specify list
4221 of languages to be installed by setting env variable before
4222 configure. If it is empty, it defaults to full list.
4224 * src/menu.h menu_entry.{hot_pos, is_dupped} dropped
4226 * src/menu.c: consistency fixes: pull-down menu items are now
4227 accessible either with arrow keys or with hotkeys, denoted with &
4228 (and highlighted). (key combinations, placed to the right of items
4229 intended to be used from outside the menus). Freeing menu entries
4230 removed as it no longer needed
4232 * src/main.c, edit/editmenu.c: menubar init code is changed to conform
4235 * edit/edit.h: use of "Cancel" in error_dialogs replaced with
4236 "Dismiss", to avoid collisions in translation of "Cancel" in other
4237 places with this case.
4239 * src/boxes.c: select_format() and it's support removed, as it is
4240 obsoleted by input line history feature. display_init()/display_callback
4241 fixed to suite i18n changes. sort_box() - alike.
4243 * src/option.c: pause_options added &'s and gettext calls to expand
4244 statically assigned values.
4246 * src/widget.c: (radio_callback) hotkey recognition is changed to
4247 &-notation, rather than simple uppercase.
4249 * src/dlg.c: (dlg_try_hotkey) plain symbol comparison replaced with
4250 call to isalpha(), this fixes errorneous exit from input line, when
4251 button hotkey is 8-bit NLS char.
4253 Fri Apr 3 12:23:28 1998 Norbert Warmuth <k3190@fh-sw.de>
4255 * TODO: Removed obsolete entries: Similar entries in tree view
4256 are displayed correct; user specific files has been moved
4258 Added: Check what to do with menubar_arrange/destroy_menu stubs
4259 in tk/tkmenu.c; the interal editor (not portet yet) adds entries
4260 to the wrong menubar
4262 Wed Apr 1 00:15:30 1998 Norbert Warmuth <k3190@fh-sw.de>
4264 * key.c, key.h (numeric_keypad_mode, application_keypad_mode): New
4265 functions which encapsulate two hardcoded escape sequences from main.c.
4267 * main.c (main): Use the two new functions from key.c
4269 * main.c, screen.c: Moved all file selection keys from the default
4270 keymap to the keymap for panels in listing mode.
4271 Changed *_selection_cmd to *_selection_cmd_panel in panel_keymap
4272 (functions in panel_keymap get a WPanel * as first parameter,
4273 i.e. the indirection with cpanel isn't necessary).
4275 * main.c (midnight_callback): Keys '*' and '-' were not treated
4276 when only_leading_plus_minus==0;
4277 Optimized the if-clauses a little bit (i.e. removed duplicate
4278 checks). More optimation is possible but it would make the whole
4279 stuff completly unreadable.
4281 * key.c (correct_key_code): KP_ADD, KP_SUBTRACT and KP_MULTIPLY
4282 will be translated to +, - and * only if the option
4283 alternate_plus_minus is turned off.
4285 * learn.c (learn_keys): Turn alternate_plus_minus temporarily on
4286 to avoid translation of KP_ADD, KP_SUBTRACT and KP_MULTIPLY in
4287 correct_key_code/make sure keypad is in application mode (makes it
4288 possible to learn this keys).
4290 * cmd.c (reverse_selection_cmd_panel): New function (renamed from
4291 reverse_selection_cmd, takes a WPanel * as parameter, references to
4292 cpanel changed to panel/the passed parameter).
4293 reverse_selection_cmd now simply calls this function with cpanel.
4294 This pair was missing among the *_selection_cmd* functions.
4296 * cmd.h: Added function prototypes.
4298 1998-03-31 Paul Sheer <psheer@obsidian.co.za>
4300 * cmd.c (nice_cd): Forgot to invoke the history registration in
4303 1998-03-30 Miguel de Icaza <miguel@nuclecu.unam.mx>
4305 * menu.c (destroy_menu): Implement destroy_menu for all of the
4306 ports as a routine that frees the menu entries if
4307 internationalization has been enabled.
4309 * wtools.c (quick_dialog_skip): Do not i18n any string that is empty.
4311 Sun Mar 29 23:02:09 1998 Alex Tkachenko <alex@bcs.zp.ua>
4313 * src/menu.[ch]: new member to menu_entry (hot_pos) introduced to make
4314 internationalized version of menu use externally defined hotkeys
4315 (denoted with preceding &). create_menu() fixed to load intl text of
4316 the entries. Some fixes around menu.c to enable usage of reloaded
4319 * main.c, editmenu.c: menu initialization code fixed to conform new
4320 menu structure. editmenu init code includes N_(..) now.
4322 * menu.c, layout.c, editwidget.c: bar menu items displacement is made
4323 dynamically upon initialization and window size changes. Mouse event
4324 processing is fixed accordingly.
4326 Sat Mar 28 13:18:36 1998 Alex Tkachenko <alex@bcs.zp.ua>
4328 * src/screen.c: (repaint_file) last patches to format_file() in the
4329 same file broke appearance of panels in brief mode -- fixed.
4331 Mon Mar 30 20:02:49 1998 Paul Sheer <psheer@obsidian.co.za>
4333 * main.c, screen.c, dirhist.c, dirhist.h, main.h, widget.c,
4334 main.h and others?: Directory history added. The previous
4335 directory history code was removed. The directory history now
4336 loads and saves using the same routines as the input widget. The
4337 keys meta-y, and meta-u are used to go backward and forward
4338 through the history. The buttons to the right and left of the
4339 current directory display on the panel can be used as well. The
4340 v button brings up a history, but no key is assigned to this.
4341 Discussion as to correct color and shape of these buttons is
4342 open. show_hist() in widget.c is made generic to be called for
4343 any widget. Help pages still needed to be added for the
4346 Wed Mar 25 19:05:31 1998 Norbert Warmuth <k3190@fh-sw.de>
4348 * view.c (view_done): Set monitor off before deleting the view
4351 * subshell.c (init_subshell): Added ':q' to $cwd in the precmd for
4352 tcsh. It preventes command and filename substitution (e.g. for
4353 a directory named "[word] words")
4355 Mon Mar 23 18:06:10 1998 Norbert Warmuth <k3190@fh-sw.de>
4357 * main.c: Deleted some old and unused code
4359 1998-03-24 Miguel de Icaza <miguel@nuclecu.unam.mx>
4361 * All over the src/ directory: Internationalization changes.
4363 * background.c: Avoid buffer over-runs and reduce number of
4364 internationalization strings.
4366 Mon Mar 23 14:04:07 1998 Philippe De Muyter <phdm@macqel.be>
4368 * configure.in (nlink_t): Check it using AC_CHECK_TYPE.
4369 * acconfig.h (nlink_t): New define slot.
4371 Mon Mar 23 08:17:55 1998 Pavel Roskin <pavel_roskin@geocities.com>
4373 * src/main.c: mcedit can be named mce or mcedit.exe - only
4374 3 first letters are significant. The same for mcview.
4375 Console is always saved in do_execute() if it was saved there.
4377 * src/util.h: STRNOMP introduced (strncmp on unix and strnicmp
4380 * slang/slgetkey.c: SLang_getkey() and SLang_input_pending()
4383 * myslang.h: using fast one_vline() and one_hline() for OS2_NT
4385 Mon Mar 23 00:47:51 1998 Norbert Warmuth <k3190@fh-sw.de>
4387 * autogen.sh: added support for builddir != srcdir
4389 * doc/Makefile.in: The manual pages are generated files and
4390 located in the builddir and not in the srcdir.
4392 * find.c (find_file): Use the same hotkey for the panelize button
4393 as we use with the external panelize command.
4395 Fri Mar 20 17:51:01 1998 Norbert Warmuth <k3190@fh-sw.de>
4397 * myslang.h: --with-ncurses didn't compile: renamed
4398 KEY_BACKTAB to KEY_BTAB (the name ncurses uses)
4400 * dlg.c (dlg_key_event): likewise
4402 1998-03-19 Miguel de Icaza <miguel@nuclecu.unam.mx>
4404 * screen.c: Remove KEY_DC forever. This should have never been
4407 Wed Mar 18 22:08:34 1998 Miguel de Icaza <miguel@nuclecu.unam.mx>
4409 * achown.c (do_enter_key): call endgrent, endpwent.
4411 * chown.c (init_chown): call endgrent, endpwent.
4413 Tue Mar 17 23:58:40 1998 Pavel Machek <pavel@elf.ucw.cz>
4415 * src/file.c: Fix for the case where the disk gets full.
4417 Tue Mar 16 18:35:53 1998 Stas Maximov <stmax@u213.srcc.msu.su>
4419 * src/hotlist.c default values for dialogs which add entries to hotlist
4420 are now set to the current directory.
4422 Tue Mar 10 14:42:01 1998 Stas Maximov <stmax@u213.srcc.msu.su>
4424 * vfs/extfs.c, lib/mc.ext, vfs/extfs/extfs.ini, vfs/extfs/cpio.in
4425 Added support for cpio extfs including compressed and gziped
4426 cpio archives. compress and gzip handled separately because I saw
4427 a lot of systems which have compress, but don't have gzip.
4429 Sat Feb 21 16:46:49 1998 Stas Maximov <stmax@u213.srcc.msu.su>
4431 * src/subshell.c: failed to grantpt on SVR4 due to zero-initialized
4432 subshell_pid. sigaction handler for SIGCHLD does waitpid(subshell_pid,
4433 ...) and when subshell_pid == 0 it steals the zombie from grantpt(3)
4434 which does fork/exec/waitpid for suid program to set the permissions on
4435 pty. It's enough to initialize it to 1 or -2.
4437 1998-03-16 Federico Mena Quintero <federico@nuclecu.unam.mx>
4439 * util.c (convert_pattern): Now the internal buffer is malloc()ed
4440 instead of being static. This is required for long patterns.
4441 (regexp_match): Free the pattern after calling convert_pattern().
4443 * file.c (file_mask_dialog): Free the source_mask after calling
4446 Mon Mar 16 13:03:45 1998 Pavel Roskin <pavel_roskin@geocities.com>
4448 * cmd.c: Internal edit is used by default. vi may be
4449 confusing for some users.
4451 * tree.c: tree_rmdir_cmd() should not return any value,
4452 because it is not analyzed for errors.
4454 * main.c: NT code: use O_BINARY instead of _O_BINARY
4456 * util.c: DO not test for arguments that do not make sense under
4459 * file.c: utime.h always included for Windows NT port.
4461 * view.c: Events are flushed only if the ports supports it.
4463 Mon Mar 16 12:30:39 1998 Stas Maximov <stmax@u213.srcc.msu.su>
4465 * hotlist.c: Defaults on the hotlist add-current and new-entry is
4466 the current directory.
4468 Sat Mar 14 17:30:21 1998 Miguel de Icaza <miguel@nuclecu.unam.mx>
4470 * file.c (panel_operate): Why was the flags in query_dialog set to
4471 D_INSERT is a big mistery. Should be fixed now.
4473 Fri Mar 13 18:10:58 1998 Miguel de Icaza <miguel@nuclecu.unam.mx>
4475 * dlg.c (dlg_stop): New routine used to finish dialog boxes.
4477 * cmd.c (set_panel_filter_to): Implementation split. To be used
4480 * widget.c (input_new): GNOME-entry widget is inspired in the
4481 WInput + the history patches from Paul. Use the GNOME-entry
4482 history, as this makes it easier to deal with the filter button on
4485 * setup.c (save_panel_types): Do not use if running on the gnome
4486 edition. This need a lot of fixing for making this work with
4487 gnome and session management.
4489 * main.c (do_nc): DO not call setup_panels_and_run_mc as
4490 create_panels in gnome edition does all this.
4492 (setup_mc): Skip part of the setup.
4494 (do_execute): Do not Execute any of the pause code after
4497 Wed Mar 12 17:46:09 1998 Norbert Warmuth <k3190@fh-sw.de>
4499 * screen.c (chdir_other_panel, chdir_to_readlink): Use passed
4500 panel instead of cpanel (removed mixed use of panel and cpanel).
4502 * main.c, screen.c: Deleted F13 from the default keymap, added F13
4503 and F14 to the panel's keymap (the keymap for panels in listing
4504 mode). These two keys are only useful for panels in listing mode.
4505 It seems there are even more candidates for such a move. Especially
4506 select_cmd and unselect_cmd which appeared recently for the GNOME
4507 edition in screen.c act unexpected for panels in tree-mode.
4509 * cmd.c (view_simple_cmd): Added WPanel* to the parameter list.
4511 (edit_cmd_new): No need to get a panel because it is not used.
4513 * panelize.c: Changed hotkey of the Panelize button (Alt-p is
4514 already used by the input line history). I wonder if I should
4515 change it in the find dialog, too (just to have a unique hotkey
4516 for the panelize button).
4518 Wed Mar 11 19:02:48 1998 Miguel de Icaza <miguel@nuclecu.unam.mx>
4520 * view.c: Lots of changes: Split the X11 code from the main view
4521 program. This is needed to cleanly support the addition of the
4522 Gnome version of the file viewer;
4524 New names for old functions (just a view_ prefix):
4525 view_add_character, view_add_string, view_gotoyx, view_set_color,
4526 view_display_clean. Now all of them take a WView argument (which
4527 is ignored in the macro for the text edition). This is to support
4528 multiple open views at once.
4530 * boxes.c (symlink_dialog): Enable ok/cancel buttons for the Gnome edition.
4532 * cmd.c (link_cmd, symlink_cmd): Provide the filename to operate
4535 Tue Mar 10 20:41:45 1998 Miguel de Icaza <miguel@nuclecu.unam.mx>
4537 * cmd.c (unselect_cmd_panel, select_cmd_panel): To avoid races on
4538 the X11 version, these routines now take a panel argument at
4541 * widget.c (radio_callback): Call x_radio_focus for FOCUS/UNFOCUS
4543 (button_callback): Fallback to default_msg on WIDGET_FOCUS
4546 1998-03-10 Federico Mena Quintero <federico@nuclecu.unam.mx>
4548 * xslint.c (getch): Added missing "return".
4550 * utilunix.c (init_groups): Added parentheses around
4551 assignment/truth value.
4553 * boxes.c: #include <stdlib.h>
4555 * screen.c (string_inode): Cast fe->buf.st_ino to long to be
4556 consistent with sprintf format.
4558 * main.c (handle_args): Added parentheses around assignment/truth value.
4560 Sat Mar 7 14:33:38 1998 Pavel Roskin <pavel_roskin@geocities.com>
4562 * src/complete.c: obsolete hack for OS/2 and NT removed.
4563 Completion works for NT now (not very good)
4565 * src/main.c: HOME variable is respected by NT and OS/2
4566 versions. If it is missing, we use LIBDIR on OS2_NT and "/"
4569 * src/key.h: SHIFT_PRESSED is set to 0x0010 on NT. This value
4570 doesn't conflict with definitions for ALT and CTRL, but it is
4573 * vfs/vfs.h: Minor changes for OS/2. EMX defines mkdir with
4576 * vfs/tcputil,c, vfs/utilvfs.c: signal.h was includes twice.
4578 * vfs/Makefile.in: undelfs.h is not used and should disapper
4580 * slang/slos2tty.c: new file, copied from SLang-0.99.38,
4581 needed for OS/2 port
4583 * slang/Makefile.in: added slos2tty.c
4585 * vfs/extfs/README: annoying spell errors corrected
4587 * src/main.c: --termcap disabled for OS2_NT because it doesn't
4588 (and cannot) work. ARCH_FLAGS is not needed anymore.
4590 * src/text.c: most includes removed. Added a warning is someone
4591 compiles this file with HAVE_X. Improved color scheme for
4592 consoles with 16 background colors (e.g. OS/2). Hack for OS/2
4595 * src/util.c, src/util.h: STRCOMP and MC_ARCH_FLAGS are moved
4596 to util.h. It may be useful to use them for filenames' completion
4599 Fri Mar 6 19:29:54 1998 Miguel de Icaza <miguel@nuclecu.unam.mx>
4601 * find.c: Simplify header files: use the fs.h include file.
4603 (use x_flush_events).
4605 * screen.c (string_file_name): In GNOME, the CList widget does the
4606 filename truncation, so we do not do it here.
4608 (panel_new): Initialize all of the wpanel contents to zero. This
4609 will is required by the GNOME X ports (to figure out if a field
4610 has been inited or not).
4612 Thu Mar 5 10:28:40 1998 Norbert Warmuth <k3190@fh-sw.de>
4614 * popt.c (poptParseArgvString): make it compile with the native
4615 compiler on AIX 4.1.3
4617 1998-03-04 Federico Mena Quintero <federico@nuclecu.unam.mx>
4619 * cmd.c: Added #include "x.h"
4621 Wed Mar 4 14:49:55 1998 Norbert Warmuth <k3190@fh-sw.de>
4623 * doc/mc.1.in, mc.hlp: updated (these files haven't been updated
4624 at the last change to mc.sgml)
4626 * doc/mc.sgml: spelling error corrected
4628 * Makefile.in: renamed all references of mc.1 to mc.1.in
4630 * find.c (locate_egrep): Don't use an absolute path if egrep isn't
4631 found at the usual places. Then execvp will search the directories
4632 passed in the environment PATH variable (a little bit slower but
4633 better than a defunct find content).
4635 * tree.c: removed the include file I mistakenly added with my
4638 Tue Mar 3 20:00:36 1998 Miguel de Icaza <miguel@nuclecu.unam.mx>
4640 * file.c (get_file): Take a panel argument. I am pretty sure that
4641 this is broken for the case where we are copying from a WTree.
4643 (panel_operate): take a panel argument instead of defaulting to
4646 Mon Mar 2 15:54:55 1998 Miguel de Icaza <miguel@nuclecu.unam.mx>
4648 * dlg.c (create_dlg): Set running to 0 on creation;
4649 (add_widgetl): do widget initialization if the dialog is already
4650 running when this dialog box is created.
4652 Mon Mar 2 12:11:37 1998 Norbert Warmuth <k3190@fh-sw.de>
4654 * vfs/ftpfs.c (changetype): Removed the hack which always forced
4655 sending the command "TYPE I" when changing to binary transfer mode
4656 was requested even when MC thought the connection was already in
4657 binary mode (bucket->isbinary == 1). The correct fix is now in
4660 * vfs/ftpfs.c (login_server): Set the transfer mode stored in
4661 the bucket to UNKNOWN (the bucket might be reused and the old
4662 transfer mode isn't valid any longer).
4664 * screen.c (panel_key): Cleanup: deleted if-clause with -1 (EV_NONE)
4665 which isn't delivered to widgets by the dialog manager; always
4666 return 1 when key was handled; removed the function keys from the
4667 panel's keymap (the function keys are always handled by the
4668 buttonbar); don't eat characters below ' ' (C-l and Shift-F3 now
4669 work even when quick search was started); characters between 32 and
4670 255 start quick search if there is no commandline (no C-s necessary
4673 * tree.c (tree_key): likewise
4675 Tue Feb 24 18:37:36 1998 Stas Maximov <stmax@u213.srcc.msu.su>
4677 * subshell.c: Set subshell_pid to 1 on startup
4679 Fri Feb 13 19:59:39 1998 Alexander Savelyev <fano@VCom.kiev.ua>
4681 * screen.c: KEY_DC is also handled by delete_cmd.
4683 * vfs/ftpfs.c (chdir): sending the CWD command is not necessary
4686 (ftpfs_connection_close): Do not use WAIT_REPLY, closes
4689 (open_data_connection): implement the reget command.
4691 * boxes.c: bigger VFS dialog box.
4693 * file.c (init_replace): Add support for copying files only if the
4694 size differs, and support for regetting ftp files.
4696 Wed Feb 11 20:08:50 1998 Norbert Warmuth <k3190@fh-sw.de>
4698 * user.c (execute_menu_command): Extented the syntax of %-macros
4699 used in the user menu in order to switch quoting on (default) and
4700 off, e.g. %0f means don't quote the expanded macro, %f and %1f mean
4701 quote the expanded macro.
4704 Fri Jan 30 16:43:47 1998 Miguel de Icaza <miguel@nuclecu.unam.mx>
4706 * dlg.c (create_dlg): Now we pass the flags parameter to the
4707 create_dialog routine.
4709 * tkmain.c (xtoolkit_create_dialog): Check for the grided value
4711 Fri Jan 23 07:28:54 1998 Peter Daum <gator@cs.tu-berlin.de>
4713 * extfs.c (open_extfs_archive): Pass the filename to the list
4716 * extfs/mailfs: New file system for browsing mail files (support
4717 for compressed mail fiels as well).
4719 Fri Jan 23 07:19:18 1998 Pavel Roskin <pavel_roskin@geocities.com>
4721 * edit/edit.h: mc_mkdir requires 2 arguments for any operation
4722 system. Obsolete #ifdef's removed.
4724 * edit/editwidget.c: ansi standard violation removed
4726 * nt/Makefile.NT: default SLang directory is now ../slang. Most
4727 of SLang sources are no more compiled for MC.
4729 * nt/drive.h: new file. Copied from os2/drive.h with minor changes
4731 * nt/ket.nt.c: new way for handling conflicting SHIFT_PRESSED
4732 definitions. get_event can work without blocking. Copy, move
4733 and delete operations work normally.
4735 * nt/slint.nt.c: SLang_getkey2 and Slang_input_pending2 are
4736 copied from src/slint.c
4738 * nt/sys/param.h: annoying warnings temporaly suppressed.
4740 * slang/slvideo.c, slang/slw32tty.c: new files. They contain
4741 changes by Alexander Dong.
4743 * src/myslang.h: definitions for acsii symbols removed, since
4744 they are available in slang.h. Double lines are not used anymore.
4746 * src/panelize.c: sys/wait.h is included only if HAVE_SYS_WAIT_H
4749 * nt/Makefile.NT: text.c is added
4751 * nt/Makefile.VC4: "-debug" switch for linker is not used for
4754 * src/screen.c (show_dir): double lines are no more used by NT and
4757 * src/wtools.c (real_input_dialog_help): layout of input dialog for
4758 XView port is corrected
4760 * edit/edit.h: mc_mkdir requires 2 arguments for any operation
4761 system. Obsolete #ifdef's removed.
4763 * edit/editwidget.c: ansi standard violation removed
4765 Wed Jan 21 14:01:29 1998 Miguel de Icaza <miguel@nuclecu.unam.mx>
4767 * ext.c (regex_command): reverted the patch that changed tests for
4768 *p == ' ' || *p == '\t' to isspace(). isspace() is true for tabs,
4769 newlines, carriage-returns and vertical tabs as well. Which is
4772 Wed Jan 21 11:58:39 1998 Sung-Hyun Nam <namsh@lgic.co.kr>
4774 * ftpfs.c (retrieve_dir): Avoid compiler warning by testing
4775 explicitly the value.
4777 screen.c (format_file): color not initialized when we met
4780 Wed Jan 21 11:28:21 1998 Alex Tkachenko <alex@bcs.zp.ua>
4782 * cmd.c, utilunix.c: cosmetic changes to reduce compiler warnings
4784 * utilunix.c (my_system): small fix for SCO zombies moved here;
4785 now it returns WEXITSTATUS(status) instead of status itself. While
4786 missing it may not hurt on i.e., linux, on SCO it gives incorrect
4789 * vfs/extfs.c system() calls replaced with my_system() call; this
4790 allows a greater degree of control - fixes SCO system() return value
4791 processing. Notice: plain replacement system() with WEXITSTATUS(system)
4792 does not produce correct behavior (don't ask me why).
4794 * panelize.c (do_external_panelize): similar fixes for pclose()
4795 return value on SCO.
4797 view.c (load_view_file): inverted value of viewer_magic_flag to
4798 put viewer decompression state in accordance with F8 label text.
4799 Also default_nroff_flag is initialized to be 1; thus enabling all
4800 filter processing by default easies mc usage for novice users.
4802 Sun Jan 18 13:47:37 1998 Sung-Hyun Nam <namsh@lgic.co.kr>
4805 * panel.h, tkscreen.h : error when compile dlg.c
4806 * tkconf.h : paint_frame
4807 * screen.c : to include paint_frame
4808 * tkmain.c : I just copied clr_scr() from the text.c
4810 Fri Jan 16 16:19:59 1998 Miguel de Icaza <miguel@nuclecu.unam.mx>
4812 * screen.c (format_file): Do not invoke the file_compute_color
4813 routine for empty lines.
4815 * gmain.c: Color scheme for Gnome
4817 * gscreen.c: Color setup now allocated the GdkColor *.
4819 * color.c: Moved the default color setting to a per-port
4820 location (text.c for the text mode edition); new color
4821 configuration: core; Fixed the case where the color spec was
4822 buggy and we kept on a infinite loop;
4824 Fri Jan 16 13:47:13 1998 Pavel Roskin <pavel_roskin@geocities.com>
4826 * nt/drive.nt.c, nt/chmod.nt.c: Updated button_new and check_new
4829 Fri Jan 16 12:47:39 1998 Norbert Warmuth <k3190@fh-sw.de>
4831 * vfs/ftpfs.c (command): Don't log passwords when the dialog between
4832 server and client is logged to a file (mc -l logfile).
4834 * vfs/ftpfs.c (resolve_symlink, retrieve_dir): When a directory
4835 contains spaces send two commands ("CWD path" and "LIST .") instead of
4836 one command ("LIST path") in order to get directory listings.