It's only written but never read.
(struct inode): Likewise.
* extfs.c: All dependencies changed.
(extfs_open): Mark file as changed if it's open for writing.
authinfo_get_authinfo_from_user() to vfs_smb_get_authinfo()
and remove their definitions.
* vfs/vfs.h: Declare smb_authinfo and vfs_smb_get_authinfo().
(get_stat_info): Eliminate fake_stat, memory leak fixed.
(IPC, URL_HEADER): Make static const.
(smbfs_stat): Fix segmentation violation.
(statfile_helper): Allocate memory for single_entry once. It is never
freed now, and only my_stat element of this structure is used.
* direntry.c: Likewise.
* fish.c: Likewise.
* ftpfs.c: Likewise.
* local.c: Likewise.
* tar.c: Likewise.
* utilvfs.h: Don't include <config.h> - it should be included
in all C files instead.
* xdirentry.h: Likewise.
(shell): Remove comment and #ifdef around shell variable.
(process_args) [HAVE_SUBSHELL_SUPPORT]: All related args enclosed
between one #ifdef ... #endif pair.
(process_args): smbfs_set_debug () takes a debug level as argument,
commented out.
* vfs/sfs.c (shell): Variable moved to ...
* vfs/util-alone.c (shell): ... here'
later fails under non-login shells.
(pipeopen): Redirect stderr of ssh to /dev/null.
From Rich Roth:
(dir_load): Redirect stderr of ls to /dev/null.
(linear_start): Likewise.
(clean): Remove *.so.
* smbfs.c: Include utilvfs.h instead of ../config.h, ../src/main.h,
../src/tty.h and ../src/global.h.
(password, username): Made static.
(is_error): Commented out.
(loaddir_helper): Don't ignore hidden files, style fixes.
(browsing_helper): typestr declared as char *, fstrcpy replaced by =.
(do_connect): Call cli_shutdown () and authinfo_remove () if
cli_session_setup () fails. It is not good idea to remember
wrong username/password.
(smbfs_free_dir): Nested between #ifdef SMBFS_FREE_DIR ... #endif.
(smbfs_readdir): #ifdef SMBFS_FREE_DIR used instead of C comment.
* src/user.c (execute_menu_command): Use mc_mkstemps().
* src/util.c (mc_mkstemps): New function - safely create and
open temporary file. Return the handle and the name.
* src/util.h: Declarations for init_tmpdir() and mc_mkstemps().
Define TMPDIR_DEFAULT and SCRIPT_SUFFIX.
* vfs/direntry.c (vfs_s_open): Use mc_mkstemps. Create and close
temporary file to reserve its name on the filesystem.
(vfs_s_retrieve_file): Use mc_mkstemps().
(g_tempnam): Remove.
* vfs/extfs.c (extfs_open): Use mc_mkstemps().
* vfs/sfs.c (redirect): Likewise.
* vfs/shared_ftp_fish.c (_get_file_entry): Likewise.
(retrieve_file): Likewise.
* vfs/vfs.c (mc_def_getlocalcopy): Likewise.
* vfs/xdirentry.h: Remove declaration of g_tempnam().
rpm output varies between versions.
(mcrpmfs_copyout): Fix processing of CONTENTS.cpio. Match
filenames beginning with "./" - they are used in the version 4
packages.
NULL when appropriative error message can't be found as it is expected
in cli_errstr(). Return type changed to const char *
* smbfs.c (smbfs_fill_names): implemented
(smbfs_stat): unneeded g_strdup/g_free calls removed
(smbfs_loaddir): memory leaking fixed
* samba/libsmb/clientgen.c (rap_errmap, prots): constified
* smbfs.c (smbfs_close): honour changed semantics for return value
(on error -1 is expected).
* (fs): it is at least strange use char * for counter. Changed to int
Remove any knowledge of SAMBAFILES. Merge object files with
libsamba.a if USE_SAMBA_FS is true. Propagate "mostlyclean"
to the `samba' directory. Don't ignore errors from ranlib.
so use LC_ALL=C to override any locale
* smbfs.c (smbfs_open_link): service initialized
* (my_forget): new features of vfs_split_url used
smbfs.c at all: make gcc some more happy
the real file - check usage info instead. Use more robust checks
for valid lines. Suppress stderr from unzip. Workaround for jar
files - fix mode for files ending with slash.
sys/time.h as recommended by Autoconf documentation.
* cpio.c: Remove all time-related includes - they are in vfs.h.
* extfs.c: Likewise.
* ftpfs.c: Likewise.
* mcfs.c: Likewise.
* mcserv.c: Likewise.
* tar.c: Likewise.
* util-alone.c: Likewise.
* vfs.c: Likewise. Include xdirentry.h.
for dates found in AOLMail(SM) messages. Provide a fallback if
cannot parse the date.
(process_header): Typo fix. Use s instead of space in regular
expressions.
they are now in Makefile.am. Create links in the build
directory - source directory may be read-only. Removed hack
with mcservx - it's no longer needed.
* tar.c (read_header): memory leaking for empty symlink's names fixed
* utilvfs.c (vfs_split_url): *host is not assigned if host is null
* ftpfs.c (login_server): new features of vfs_split_url () used,
my_get_host_and_username became macro
* vfs.c (mc_opendir, mc_chdir): unneeded calls to concat_dir_and_file
removed (vfs_canon removes trailing '/')
* sfs.c (vfmake, redirect): allocated memory realeased on errors
* src/user.c: Add macro %k it is block file name
Add macro %e it is error file name
Add macro %i it is cursor column indent of spaces, only for edit
Add macro %y, it is syntax of current file in editor, only for edit
Add condition y , it is syntax pattern of current file in edit
Add macro %x it is extension of current file
Add macro %m it is current menu filename
2000-05-04 Valery Kornienkov <vlk@dimavb.st.simbirsk.su>
* gtkedit/editcmd.c: Modify External Formatter (was C indent formatter) .
Autocreate a scripts in home, from templates /usr/lib/mc/edit.indent.rc,
edit.ispell.rc, etc. Remove leading and trailing spaces into _(""),
(the message of David H. Martin <dmartina@usa.net>)
2000-05-05 Valery Kornienkov <vlk@dimavb.st.simbirsk.su>
* src/user.c: Add condition (x filename) into mc.menu .
for "Open next a free console" and like.
2000-05-04 Valery Kornienkov <vlk@dimavb.st.simbirsk.su>
src/user.c: fix segfault in chunk_alloc of glibc, when into condition
of .mnu we have quoted space. (~.mc/menu: + f \.\ test$).
2000-05-04 Valery Kornienkov <vlk@dimavb.st.simbirsk.su>
* gtkedit/edit.c:
Add ability user edit menus: system: /usr/lib/mc/cedit.menu,
* gtkedit/editmenu.c: home: ~/.cedit.menu, local: .cedit.menu
Marked block is access now from an user edit menu
Access ~/.cedit/cooledit.block for insert to cursor place from
user edit menu.
Created system cedit.menu
2000-05-04 Valery Kornienkov <vlk@dimavb.st.simbirsk.su>
* gtkedit/editdraw.c:
Improved a status string of cool editor for best understand,
and to add char,hex view.
2000-05-04 Richard Hestilow <hestgray@ionet.net>
* gnome/gdesktop.c: Fixes snap to grid.
* direntry.c (vfs_s_find_entry_tree): segfault fixed when root is NULL
(vfs_s_new_inode, vfs_s_new_entry): g_new replaced by g_new0
* ftpfs.c (dir_load): ent->name is free()d for "." and ".."
(ftpfs_directory_timeout): default value changed to 900
(netrc_next): "const char * const keywords" go to rodata and is shared
* ftpfs.c (netrc_next): "const char * keywords" is pretty nice.
* ftpfs.c (dir_load): At last, found place, that broke handling
directories with spaces in name. Problem was in prepending "/"
to "." for current directory. Which was, obviously, wrong. Hacked
to make just "LIST -la ." instead.
* vfs.c: Changed to BUF_* constants in some places.
* utilfs.c (vfs_split_url): don't assign *pass if pass is NULL
* fish.c (archive_open, archive_same): memory allocated by
vfs_split_url () must be released after use, don't strdup()
values allocated by vfs_split_url () and NULL passed to
vfs_split_url () when password value is unused
* ftpfs.c (archive_open, archive_same): ditto plus same for
ftpfs_get_proxy_host_and_port ()
* ftpfs.c (netrc_next): Turned strange "const char * const keywords"
into more alike "const char const * keywords". Still, think, it's
too strict.
* smbfs.c: Add #define BOOL_DEFINED before inclusion of samba headers.
Libncurses(or slang?) defines BOOL and that can cause problems. (In fact,
I can't find references to that const, but sure, I hade reason to do that:)
* util-alone.h: Declare load_anon_passwd() to avoid warnings.
* vfs.c (mc_def_getlocalcopy): free() replaced by g_free() to prevent
crushes with mad, thanks to Timur I. Bakeyev <timur@bat.ru>
* fish.c (linear_start): name wasn't freed after usage
* cpio.c (cpio_ungetlocalcopy): return type changed to int,
function return 0 now
* direntry.c (vfs_s_close, vfs_s_resolve_symlink): memory, allocated
by vfs_s_fullpath () is freed after use
* ftpfs.c (linear_start): ditto;
Patch by Andrew V. Samoilov <sav@bcs.zp.ua>
* vfs.c (vfs_parse_ls_lga): don't hard code st_ino and st_dev to 0's,
these variables must be assigned in vfs_s_new_inode () or extfs
layer, so ftpfs subdirectories now can be copied.
Patch by Andrew V. Samoilov <sav@bcs.zp.ua>
* vfs.[ch] (vfs_canon, mc_open, vfs_file_is_local,
mc_(un)?getlocalcopy): added const qualifier
(mc_def_getlocalcopy): tempnam() returns malloc()ed buffer,
so, free() it, not g_free();
(vfs_canon): prepend filename by cwd when tilde '~' cannot be expanded;
* vfs/ftpfs.c: Definition of PORT changed in the middle of ftpfs.c
with unexpected side effects (only when HSC_PROXY was
defined). Introduce HSC_PROXY_PORT and FTP_COMMAND_PORT and use
where appropriate.
(dir_load): Do not hard code the directory cache timeout to 10
seconds. Instead use the setting from Options/Virtual VFS ...
* vfs/fish.c (file_store): honour changed semantics for return value
(on error -1 is expected).
* vfs/ftpfs.c (file_store): dito
* gtkedit/editcmd.c (edit_replace_prompt): fix incorrect
initialization of array of structure (gcc version 2.96 20000131
chokes on it).
* lib/mc.hint: C-y and not C-u can be used to insert text in input
lines (e. g. text which has been deleted with M-d).
* configure.in: Fix the extfs-configure-fragment-in-final-output bug
* src/main.c (parse_control_file): add missing right parentheses
* src/boxes.c: fix incorrect initialization of array of structure (gcc
version 2.96 20000131 chokes on it).
* ftpfs.c: basically replaced ftpfs with new one. Unlike the
previous one, this uses new direntry.c layer, so shared_ftp_fish.c
can be killed.
This is new code, so beware.
* ftpfs.c (insert_dots): Use g_new here.
* shared_ftpfs_fish.c: Style fixes and small fixes
1999-09-22 Bjorn Eriksson <mdeans@algonet.se>
* extfs/uzip.in: Better handling of zip-archives that contain files
which contain spaces.
* vfs/extfs/uzip.in: Better handling of zip-archives that contain files
which contain spaces.
1999-09-22 Norbert Warmuth <nwarmuth@privat.circular.de>
* lib/mc.sh.in, mc.csh.in: renamed from mc.sh resp. mc.csh. Adapt
path to the mc binary according to @prefix@.
* lib/Makefile.in (srcdir): mc.sh and mc.csh are now created by
configure. Install mc.sh and mc.csh in $(suppbindir).
* doc/mc.1.in, mc.sgml: Updated the mc function definition for bash
and zsh. Suggest to source mc.sh or mc.csh instead of adding verbatim
copies of the included function definitions.
* mcfn_install.in: Comment out definitions of the mc functions. Source
mc.sh instead of adding an outdated mc function definition.
* configure.in: output mc.sh and mc.csh
* src/user.c (check_patterns): char* is used instead of char [] in sizeof
* src/util.c (string_perm): prefix named pipes by 'p' and not by `s'
1999-09-19 David Martin <dmartina@usa.net>
* gtkedit/editcmd.c (edit_print_string): Use unsigned char so that
8 bit chars from strftime get displayed when inserting date.
* lib/mc.ext.in: Add entries for bzip2 compressed pages as used in
Mandrake 6.0. The generic entry for bzip2 moved to the end of the
file to avoid interferences. In this one I changed the extension check
to a type check (as used for gzip) which might give problems in some
systems.
* configure.in: Use -Tlatin1 to format man pages when available and
"view" 8 bit chars.
1999-09-19 Norbert Warmuth <nwarmuth@privat.circular.de>
* gtkedit/edit.h: Include files reordered in order to make it compile with
--with-debug
* gtkedit/editcmd.c (menu_save_mode_cmd): calculate dialog width
dependent on lenght of translated strings to display.
* src/mad.c, mad.h, util.c, util.h: Move mad-functions from util.[ch]
to mad.[ch]
* src/option.c: Include files reordered in order to make it compile with
--with-debug
* src/mad.c (mad_init): New function. Initialize debug FILE pointer to
stderr (moved to a function because not on every system stderr is
a constant).
(mad_set_debug): added const qualifier
* src/main.c (main): call mad_init
* po/*.po: s/defination/definition/
* gnome/Makefile.in ($(MAGICDEV_GENERATED)): Make it compile with $buildir
!= $srcdir.
* vfs/ftpfs.c (ftpfs_set_debug), vfs.h: added const qualifier.
* vfs/mcserv.c: removed definition of mad_strconcat which is also
in mad.c.
* smbfs.c: #define NO_CONFIG_H before including the samba
includes; this way it will not re=define HAVE_LIBREADLINE. This
situation sucks. Should we change the names of the widget.h
history_*() functions?
1999-09-17 Federico Mena Quintero <federico@redhat.com>
* gmain.c (x_init_dlg): Display a warning if the GtkTed code path
is ever reached.
(xtoolkit_create_dialog): Likewise.
(x_add_widget): Likewise.
this dialog doesn't look perfect but at least it doesn't break gmc.
1999-09-14 Norbert Warmuth <nwarmuth@privat.circular.de>
* gnome/layout: Added the new samba password dialog.
* src/widget.[ch] (input_new): added const qualifier
* src/util.c (wipe_password): Check for NULL.
1999-09-14 Norbert Warmuth <nwarmuth@privat.circular.de>
* vfs/smbfs.c (various places): Store filenames in memory with the unix
character set and convert it back to the dos character set when filenames
are passed back to the samba server. If samba is configured correctly
this will fix the problems with filenames which contain national characters.
(bucket_set_authinfo): Set domain, username and password which will
be used to log on and authenticate against the samba server and remember this
information on a host/share basis. If set use PASSWD to get the
password. If already authenticated against the host and share use this
information. If already authenticated against host and IPC$ use this
information. If neither of the former is true ask the user how to
log on.
(authinfo_get_authinfo_from_user): New function. Query the user for
domain, username and password to use for authentication.
(authinfo_free): New function. Free memory in authentication structure.
(authinfo_free_all): New function. Free the list used to remember
authentication information.
(authinfo_compare_host_and_share, authinfo_compare_host): New functions.
Helper functions used to search the authentication list.
(authinfo_add): New function. Add one authentication entry to the
authlist.
(authinfo_remove): New function. Remove one entry from the authlist.
(free_bucket): Free memory associated with one bucket.
(smbfs_get_free_bucket): Initialize the complete connection array
with 0. Free the memory allocated for a bucket and initialize the
bucket before reusing it.
(smbfs_open_link): use new functions to get authentication information
(get_stat_info, smbfs_stat): remove unused variables.
* ftpfs.c (translate_path): Remove static buffer from here.
Return a strdupped string now.
(send_ftp_command): Release translate_path result here.
(open_data_connection): Release translate_path result here.
(ftpfs_chdir_internal): Reease it here too.
* lib/mc.sh: create temporary files in ~/.mc/tmp in order to avoid
symlink attacks (mcfn_install and the man page still needs to be
updated).
* src/main.c (print_mc_usage): Print the bug reporting address.
(main): Put prompt in a new line at termination.
* vfs/shared_ftp_fish.c (get_line): Fixed off by one error ('\0' might
have been written one slot past the supplied character array).
* vfs/ftpfs.c (resolve_symlink_without_ls_options): Don't dump core on
strange symlinks (ls -la doesn't reveal where the symlink points to
and ls -lLa doesn't resolve the symlink either)
Added protection against recursive symbolic links.
* configure.in (AC_WITH_SLANG): rm -f destination before makeing
a symbolic link (ln -sf doesn't work as expected on Solaris)
1999-08-19 Norbert Warmuth <nwarmuth@privat.circular.de>
* vfs/smbfs.c: added missing include file
(browsing_helper): use g_strdup instead of g_new + pstrcpy
(Btw. this is an example why the handholding of smblib gives a
false security feeling. pstrcpy limits the number of characters
copied and is used with a buffer which is smaler than the hard
coded limit in pstrcpy)
(loaddir_helper): ditto
(server_browsing_helper): ditto
(get_remote_stat): fixed memory leaks
(smbfs_loaddir): ditto
(get_stat_info): ditto
(smbfs_stat): ditto
(convert_path): rewritten, now it's much cleaner what it does.
This rewrite was necessary because gcc -O2 choked on glibc 2.1
systems. In that combination strncat is a macro which expands to
strlen and strcat and in vfs/samba/include/includes.h the latter is
defined to __ERROR__XX__NEVER_USE_STRCAT___;.
* vfs/direntry.c (vfs_s_getlocalcopy): There's an aditional strdup
needed. In rare cases a pointer was freed twice. Pavel Machek
pointed this out a while ago but obviously it hasn't been fixed, yet.
* vfs/sfs.c (vfmake): Quote characters with a special meaning to the
shell in filenames/-pathes (Fix Bug #1931, VFS will not work if
your full path has the space character in it.).
* vfs/sfs.c (vfmake): Quote characters with a special meaning to the
shell in filenames/-pathes (Fix Bug #1931, VFS will not work if
your full path has the space character in it.).
* gnome/gconf.h (PORT_STATIC_IN_STRING_FILE_XTIME): new port specific
feature. The Gnome edition first calls all string_file functions
and then uses the return values of these functions. Therefore additional
static buffers in string_file_[acm]time are needed.
* src/screen.c (string_file_[amc]time): These three functions use
file_date which returns a pointer to a static buffer. In the
Gnome edition this buffer has to be coppied to a static buffer
which isn't used in the other two functions (Fix Bug #1766).
* src/util.c, util.h: Moved some constants to util.h
* vfs/tar.c (read_header): Don't segfault when a symlink points to the
root directory.
1999-08-04 Norbert Warmuth <nwarmuth@privat.circular.de>
* src/widget.c (push_history): Add SMB Link to the list of input dialogs
where urls are input without vfs prefix.
Translate the titles of these input dialogs only once.
Removed Gnome specific code because the Gnome edition doesn't use
the input history any more.
* src/util.c (strip_password): Add /#smb: to the list of urls which might
be input with password.
* gnome/gcmd.c (gnome_about_cmd): Change strings in gmc "about" to
static as they only translated once.
* src/menu.c (create_menu, menubar_drop_compute, menubar_paint_idx):
Discount '&' for hotkeys when checking menu widths to avoid the
extra blank space.
Moved this accounting from the drawing to the creating function.
* src/widget.c: Translate History box tittle.
* po/es.po, po/es_ES.po: added translation for history box title
1999-08-01 Norbert Warmuth <nwarmuth@privat.circular.de>
* src/vfs.c: Don't close a function definition with "};". SunCC from
2.5.1 chokes on the extra semicolon.
(mc_munmap): Don't dereference function pointer when checking for
NULL (this check is supposed to prevent a segfault instead of
causing one). This haven't got noticed up to now becaue there's no
file system with mmap but without munmap.
* configure.in (VERSION): Bumped version number to 4.5.34.
1999-07-04 Federico Mena Quintero <federico@nuclecu.unam.mx>
* Make-mc.in (distcopy): Added a bunch of new lists of files for
the directories in vfs/samba. Use them in this rule, because
plain wildcards will not work right.
(SAMBA_DIST_TOPLEVEL): Added configure to the list of distributed
files.
* file.c (move_dir_dir): Give an error when an attempt is made to
move an empty directory into itself.
1999-06-14 Wayne Roberts <wroberts1@cx983858-b.orng1.occa.home.com>
* vfs/smbfs.c: New file. Implements the Samba-based file system.
* vfs/vfs.h: Declare vfs_smbfs_ops, vfs_file_is_smb.
* vfs/vfs.c (vfs_file_is_smb): implemented.
(vfs_init) register smbfs.
* vfs/samba: Incorporate SAMBA source code required for smbfs
1999-05-27 Miguel de Icaza <miguel@nuclecu.unam.mx>
* Make.common.in (confdir): Define confdir as sysconfdir. This
should fix the problem we had with FSSTND distributions.
* src/user.c (user_menu_cmd): Allow national characters as hotkeys.
Don't dump core when the menu file contains only empty lines
* src/view.c (search, block_search): Use the correct column for the
percent display while searching.
Fri Jun 18 11:49:05 1999 Norbert Warmuth <nwarmuth@privat.circular.de>
* vfs/ftpfs.c (resolve_symlink_with_ls_options): Some ftp servers don't
make a difference between "LIST -la" and "LIST -lLa". If we find such
a server don't use -lLa when resolving symbolic links.
* vfs/ftpfs.c (retrieve_dir): If we don't get any valid directory entry
(i.e. not even "." and "..") check whether the directory is empty
or not existend (instead of failing with "ftpfs: failed").
everything is going ok.
Ok, I've now limited number of "could not parse" error messages to 5
per session. Lower this limit if it makes you crazy, but DO NOT REMOVE
those messages.
* src/ext.c (exec_extension): Use tempnam instead of tmpnam (AIX doesn't
like the lattern when compiled with -mthreads).
* src/user.c (execute_menu_command): ditto.
Wed Apr 21 22:04:30 1999 Norbert Warmuth <nwarmuth@privat.circular.de>
* gtkedit/editcmd.c (edit_save_file): MAD knows about tempnam, no
need to fool it by strdup'ing the return value of tempnam.
Wed Apr 21 21:59:50 1999 Norbert Warmuth <nwarmuth@privat.circular.de>
* vfs/extfs.c (extfs_open): tempnam returns a malloced string, no need
to strdup it
(various places): use free instead of g_free to free string returned
by tempnam.
* main.c (_do_panel_cd): If we are using GNOME, and the panel is a
desktop panel, open up a new panel for the contents.
gnome/
* gdesktop.c (create_panel_from_desktop): Assign selected_index
when we find the last selected icon.
(desktop_icon_info_open): Desktop directory open case moved to
main.c to handle both general and action cd commands.
vfs/
* extfs.c (extfs_unlink):
(extfs_mkdir):
(extfs_rmdir):
(remove_entry): New functions.
(vfs_extfs_ops): Add unlink, mkdir and rmdir functions to table.
Add descriptions for these to the extfs README.
are almost complete (i.e. to handle all nitty gritty cases), but they
seem to be working OK right now. SM should be much more stable now.
Please tell me if you find any weird behavior - Federico
1999-03-30 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gdesktop-icon.c (desktop_icon_realize): Remove the
WM_CLIENT_LEADER property from icon windows so that window
managers will not store SM information for them.
* gnome-open-dialog.c: Added missing #includes.
* gdesktop-init.c (desktop_init_at): Removed an unused variable.
* gdesktop.h: Added some missing prototypes.
* gmain.h: Added some missing prototypes.
* Makefile.in: Added gsession.[ch] to the list of sources.
* gmain.c (create_panels): Consider whether we have a CORBA server
and session management.
* gdesktop.c: #include "gdesktop-init.h"
* gdesktop.c: Added a missing cast to GNOME_DIALOG.
* gmain.c (create_panels): Removed the run_desktop global
variable.
* glayout.c (create_container): Set the wmclass of the panel to
include its unique ID.
* gsession.[ch]: New file with the functions that deal with
session management.
* glayout.c (gnome_exit): Use session_set_restart().
* gcorba.c (corba_init): Now returns an int with an error value.
(corba_init_server): Initialize the server properly.
Fixed all the object implementation code.
(corba_create_window): New function used to create a window with
the CORBA server.
* gmain.c (gnome_check_super_user): Now the check for running as
root is done here. There should be no GUI code in src/.
1999-03-30 Federico Mena Quintero <federico@nuclecu.unam.mx>
* dlg.c (dlg_run_done): Do not call the callback of a NULL current
widget.
* setup.h: Added missing prototype for setup_init().
* filegui.c (check_progress_buttons): Added a missing return
value.
* dlg.c (remove_widget): Added a missing return value.
* main.c: Removed the global directory_list variable.
Removed the main_corba_register_server() function.
* main.h: Removed the global run_desktop variable.
* panel.h: Now the panel structure has a unique numerical ID used
for session management.
* screen.c (panel_new): Maintain a unique ID for each panel.
* main.c (maybe_display_linksdir): Handle display of the desktop
init dir here.
(main): Call gnome_check_super_user().
(init_corba_with_args): Call corba_init_server().
* main.c (init_corba_with_args): Do CORBA initialization here. Also
removed the global force_activation option.
1999-03-30 Federico Mena Quintero <federico@nuclecu.unam.mx>
* vfs.c (vfs_add_current_stamps): Only do stamping of the panels
if they exist.
* mcserv.c: #include <sys/wait.h>
(get_client): Put `#ifdef __EMX__' around an otherwise-unused
variable.
* utilvfs.c (vfs_split_url): Fix NULL <-> 0 confusion when
comparing characters.
* ftpfs.c (retrieve_dir): Removed unused variable dot_dot_found.
* extfs.c (extfs_init): Assign `key' to c, not `&key'.
* configure.in: Deleted duplicate VFS checks. GNOME_VFS_CHECKS
now contains all VFS checks.
* src/util.c (is_printable): Character 155 is non printable even when
full eight bit output is enabled (on the linux console 155 is
interpreted as "ESC [").
* vfs/vfs.h (vfs_translate_url): Fixed the macro which is used when
compiling without vfs.
* macros/gnome-vfs.m4: Add --with-vfs option. GNOME_VFS_LIBS still needs
to be fixed but that's not a problem because there's no libvfs, yet.
Basically, I had to setup an ssh tunnel to be able to use CVS. After
5 hours trying to get the damn thing to cvs update it was clear to me
why the .es people do not like to use the gnome cvs.
We really need a tunnel for .es hackers (as they have excellent connectivity
to the rest of Europe, they are just routed trough a 2 byte link to the US).
1999-03-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
* treestore.c (process_special_dirs): Free memory here.
Fix test: Skip only "." and "..", before it could skip "?.".
1999-03-22 David Martin <dmartina@mailexcite.com>
* wtools.c (real_input_dialog_help): Do a strncmp with the lenght
of th same translated "Password:" string.
1999-03-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
* glayout.c (create_new_menu_from): closedir after running.
1999-03-20 Miguel de Icaza <miguel@nuclecu.unam.mx>
* gnome-file-property-dialog.c (apply_metadata_change): Fix the
test for setting the icon. It was being done incorrectly and thus
it was never possible to change the icon.
* glayout.c (gnome_launch_mime_editor): Add mime-type-edit command
to the menu: this launches mime-type-capplet
1999-03-22 David Martin <dmartina@mailexcite.com>
* ftpfs.c: Internationalize the messages that are displayed as
hints.
1999-03-22 Miguel de Icaza <miguel@nuclecu.unam.mx>
* extfs.c (extfs_init): Fix the code here: If the key is empty or
only contains a new line, C would be pointing into an invalid location.
device files useless. Fixing this does not break anything, but adds the
ability to copy device files properly. Ideally, both st_dev and st_rdev
should be returned for those programs that use the vfs to properly
recreate hardlinks. Used idea was it to only return one if these???
mcserv also does not return the amount written in a write - fixed
mc should now interface correctly with secure-mcserv in basic non-secure
mode
* src/util.c (strip_password): Extented to find the url in the first
parameter. The second parameter tells whether it should search the
url (indicated by known prefixes) in the first parameter or whether
the first parameter is a url without a prefix ("ftp://", "/#ftp:",
"/#mc:").
* src/main.c (directory_history_add): Strip the password (if any) from
the freshly added value.
* src/widget.c (push_history): ditto. There's a ugly special casing
necessary for the network and ftp link dialogs (urls are entered
with out prefix).
* src/widget.c (history_put): Restrict read and write access to the
history file to the owner (Just in case I forgot to strip passwords
somewhere).
Mon Feb 1 19:32:12 1999 Norbert Warmuth <nwarmuth@privat.circular.de>
* vfs/ftpfs.c (insert_dots): renamed from insert_dot. We have to
insert ".." as well or directories from ftp servers which don't
list "." and ".." are displayed with an additional "/".
Mon Feb 1 01:45:08 1999 Timur I. Bakeyev <mc@bat.ru>
* mcserv.c: If setuid() is avaliable, use it, even, streuid() also
present. (BTW, bsdi uses it's own auth system..)
* po/Makefile.in.in: use DESTDIR (makes it possible to move
installation path with "make DESTDIR="...")
Sun Jan 31 20:51:17 1999 Alexander Savelyev <fano@vcom.kiev.ua>
* vfs/mcserv.c (do_auth): mcserv never auth properly on bsdi.
(mc/vfs/mcserv.c do_auth() on bsdi we must use setuid() not
setreuid()).
* vfs/tcputil.c: use correct signal handler (void func(int)) on BSDI
Sun Jan 31 20:41:00 1999 Norbert Warmuth <nwarmuth@privat.circular.de>
* mcserv.c (do_link): Removed duplicate invokation of link. Thanks
to Grzegorz Makarewicz <mak@mikroplan.com.pl> for spotting this.
Sun Jan 31 20:04:13 1999 Norbert Warmuth <nwarmuth@privat.circular.de>
* vfs/vfs.c (vfs_strip_suffix_from_filename): Whoever replaces every
occurance of 0 with NULL should stop this stupidy. And replacing '\0'
with NULL is plain wrong!!. Reverted this replacement.
* vfs/ftpfs.c (load_no_proxy_list): ditto
Fri Jan 29 22:55:56 1999 Norbert Warmuth <nwarmuth@privat.circular.de>
* slang/slang.h: renamed to slang-mc.h
* slang/Makefile.in: delete slang.h on "make clean"
* configure.in: link slang/slang-mc.h to slang/slang.h when the
included slang is used. Problem was that MC's slang.h was used
when we compiled with an already installed SLang and the systems
header file were included with <slang/slang.h>.
Unfortunatly I can't use AC_LINK_FILES to make the links because
if we needn't make any links AC_LINK_FILES makes a link from
srcdir to top_builddir (builddir != srcdir).
Temporary add $LGPM to $LIBS when checking for the resizeterm
and keyok functions (ncurses might be linked against GPM).
Substitude PACKAGE (intl/Makefile makes use of it)
Sun Jan 31 19:42:47 1999 Norbert Warmuth <nwarmuth@privat.circular.de>
* gnome/Makefile.in (install_mx): make it work with srcdir != builddir
(gmc.gnorba is located in $srcdir)
* src/hotlist.c (add_new_entry_input, add_new_group_input): Make the
quick_widget arrays static and various changes needed because they
are now static. add_widgets_i18n recalculates button positions
which get lost when the quick_widget arrays are non static.
* src/screen.c (to_buffer): nul terminate string when using strncpy
* src/setup.c: Save and restore new option ftpfs_first_cd_then_ls.
Sun Jan 31 19:57:24 1999 Norbert Warmuth <nwarmuth@privat.circular.de>
* vfs/ftpfs.c (insert_dot): New function. Insert a "." into the linked
list. Stat'ing the root directory of a ftpfs fails if the dot is
missing.
(retrieve_dir): insert "." into the linked list if the ftp server
haven't send it.
Sun Jan 31 19:50:24 1999 Norbert Warmuth <nwarmuth@privat.circular.de>
* The following changes make ftpfs work with a remote AmiTCP
server are the result of somehow longish EMail debugging session. I
don't know any public server of this kind but I was told the
combination Unix/Amiga boxes are often used in intranets.
* vfs/ftpfs.c (translate_path): New function. Translate a Unix path,
i.e. MC's internal path representation (e.g. /somedir/somefile) to
a path valid for the remote server. Every path transfered to the
remote server has to be mangled by this function right prior to
sending it. Currently only Amiga ftp servers are handled in a
special manner.
* vfs/ftpfs.c (various places): use translate_path
* vfs/ftpfs.c (login_server): Assume we have to mangle pathnames if
the greatings string from the server contains the word Amiga. If
this assumption is wrong I have to find another way to turn on
path translation.
* vfs/ftpfs.c (ftpfs_get_current_directory): Prepend a leading slash
if it is missing. MC needs it as seperator between hostname and
path in its internal url representation.
Wed Jan 27 03:09:48 1999 Timur I. Bakeyev <mc@bat.ru>
* All around the source: Changed copy_strings() to g_strconcat(). Modi-
fy last parameter in concat_dir_and_file() to "" - to prevent stack from
disbalancing.
* gdnd.c (get_action): Sensitize the menu items based on the
allowed actions in the drag context.
(actions): Add some underlined accelerators for the action menu.
* gdesktop.c (icon_drag_motion): Use S_ISDIR() in addition to
fe->f.link_to_dir.
* gscreen.c (panel_file_list_scrolled): Removed this function, as
it was not used for anything useful.
* gdnd.c (gdnd_drop_on_directory): Duh. Use context->action, not
context->suggested_action.
1999-01-25 Federico Mena Quintero <federico@nuclecu.unam.mx>
* Makefile.am (libvfs_la_SOURCES): Added utilvfs.h.
* Make-mc.in (VFSHDRS): Likewise.
- SFS-based file systems now work on GNOME edition, I was
not waiting for child process to finish decompressing.
- VFS code cleanup. I am going to eventually get rid of all
the macro-mania that has creeped into the vfs layer.
Miguel
* vfs/vfs.c (vfs_timeout_handler): Guard from recursive invocation.
Sat Jan 9 19:13:28 1999 Norbert Warmuth <nwarmuth@privat.circular.de>
* vfs/sfs.c (sfs_free): Fixed wrong linked list handling (head was
lost after the first iteration).
(sfs_getid): dito, return value was wrong.
* vfs/vfs.c (vfs_parse_filedate): If the date is less than 6 months
in the past, it is shown without year. In this case MC assumed
the current year which is wrong from Jan to Jun.
* sfs.c (sfs_nothingisopen): Assume for now it's always save to free
this filesystem and delete temporary files. This needs further
investigation.
* tar.c: deleted unused empty struct tar_super.
Thu Dec 31 08:40:44 1998 Norbert Warmuth <nwarmuth@privat.circular.de>
* direntry.c: Split fd_usage into fd_usage and ino_usage. fd_usage
was used for external and internal reference count. This was wrong
because we can free resources taken up by the vfs as soon as the
external reference count (now fd_usage) is zero. The internal
reference count (ino_usage) mustn't matter because the vfs has to
clean up itself in the correct order.
* vfs/direntry.c (vfs_s_new_inode): Moved initialization of st_ino
and st_dev from vfs_s_default_stat.
(vfs_s_default_stat): initialize st_ino and st_dev to zero
* vfs/tar.c (tar_open_archive): Make a new MEDATA->rdev for every
new archive.
* mountlist.c: Define xBSD on FreeBSD.
* doc/mc.sgml, mc.1.in: Deleted obsolete information about
tar_gz_memlimit. Partially rewrote the section about the
Virtual FS.. configuration dialog.
* main.c (parse_an_arg): New function, popt callback. Option
parsing in gmc was broken. The gnome*_init_with_popt_table free
the option tables and gmc tried to use the option tables later.
* main.c (handle_args): In the Gnome edition don't parse the
options a second time.
* boxes.c (configure_vfs), setup.c: Deleted obsolete options.
tar.gz files are now always unzipped to a temporary file on disk.
* gnome/layout: Deleted obsolete widgets from the Virtual FS configuration
dialog.
* vfs/tar.c: Deleted global variable tar_gzipped_memlimit.
Mon Dec 21 14:28:55 1998 Norbert Warmuth <nwarmuth@privat.circular.de>
* filenot.c (my_mkdir_rec): Someone broke this function completely by deleting
a line. Funny things happen if you use an already freed pointer.
Improved error handling: try to make directories recursivly until
mkdir succeeds or fails with errno != ENOENT. Now you will get the
correct error message when you don't have permission to create a
directory.
* mountlist.c: Deleted function prototypes for strdup and strstr,
they might conflict with definitions in the system header files.
* screen.c (Xtry_to_select): Don't select a similar file when
"name" can't be found in the panel (when deleting files the
selection jumpped from the deleted "file" to a directory which
started with the same character as "file", annoying).
Strip known vfs suffixes from "name" before trying to select
(I think Timur made this suggestion a few months ago). Know the
vfs is mature enough to do this.
* vfs/vfs.c (vfs_strip_suffix_from_filename): New function which strips
known vfs suffixes from a filename and returns a malloced string
which has to be freed. Possible improvement: strip vfs suffix from
last path component.
* vfs/extfs/*: added "umask 077" to every script.
* fish.c (FISH_OP): changed snprintf to g_snprintf, as glib is
used anyway.
* xdirentry.h (LINK_NO_FOLLOW):
* tar.c (read_header):
* direntry.c (vfs_s_resolve_symlink):
(vfs_s_inode_from_path):
(vfs_s_open): renamed NO_FOLLOW and FOLLOW to LINK_NO_FOLLOW and
LINK_FOLLOW resp. to avoid problems on solaris, where FOLLOW and
NO_FOLLOW are defined in an enum.
* vfs.h (ELAST): define it to 300, if not already defined, thats a
bad hack, but what can we do....
* vfs/vfs.c (vfs_parse_ls_lga): ignore trailing + in permission string
which indicate a file with extented attributes (ACL)
Wed Nov 25 22:16:19 1998 Norbert Warmuth <nwarmuth@privat.circular.de>
* src/cmd.c (dirsizes_cmd): Quote characters with a special meaning
when passing it to du.
exaggerated because I only saw two complaints). I added the old method
to resolve symlinks and made it the default. When someone complains about
4.5.2 we can change defaults at will ;-).
Mon Nov 23 21:19:43 1998 Norbert Warmuth <nwarmuth@privat.circular.de>
* vfs/ftpfs.c (resolve_symlink_with_ls_options): that's resolve_symlinks
we used up to release 4.1.35. It uses LIST -lLa to get symlink stats.
(resolve_symlink_without_ls_options): that's resolve_symlinks
we used in release 4.1.36 and 4.5.[01]. It gets symlink stats from the
directory cache fetching directories if necessary. We got some
complaints about slower ftpfs in the above releases. Now this methode
is no longer the default methode to resolve symbolic links. It is still
needed for ftp servers which don't understand the LIST -lLa command.
(resolve_symlink): Dispatch between the two methods to
resolve symlinks.