Commit Graph

75 Commits

Author SHA1 Message Date
Andrew V. Samoilov
ce7bae4dd7 * file.c (recursive_erase): Use mc_closedir() if mc_lstat()
fails.  Eliminate goto.
(erase_dir): Eliminate goto.
(erase_dir_iff_empty): Likewise.
2002-01-30 11:15:39 +00:00
Pavel Roskin
3a9692b680 * global.h: Provide fallbacks for getuid(), getgid(), geteuid()
and getegid().
* fs.h: Fully trust HAVE_DIRENT_H.
* complete.c: Don't include dirent.h directly, fs.h takes care
of it.
* file.c: Likewise.
* filegui.c: Likewise.
* main.c: Likewise.
* treestore.c: Likewise.
2002-01-21 20:47:05 +00:00
Pavel Roskin
73ed832576 * cmd.c: Remove OS/2 specific code.
* file.c: Likewise.
* main.c: Likewise.
2002-01-17 07:23:50 +00:00
Andrew V. Samoilov
7d88c34470 * file.c (copy_dir_dir): Check the destination is a directory
if it exists. Reported by Thomas <metaf4@pseudonym.org>.
2002-01-15 08:01:29 +00:00
Pavel Roskin
fa89635b51 Fully eliminate all references to HAVE_X and HAVE_GNOME. 2001-11-14 23:20:37 +00:00
Pavel Roskin
5e3bb68e26 * cmd.c: Change all "long" variables to "off_t" whenever they
are used to store file sizes.
* file.c: Likewise.
* file.h: Likewise.
* fileopctx.h: Likewise.
* tree.c: Likewise.
* filegui.c: Likewise.
(show_bar): Take "double" arguments.  Normalize arguments of
gauge_set_value() before converting them to "int".
2001-09-21 05:04:38 +00:00
Pavel Roskin
c11389facb * global.h: Include io.h, pwd.h, grp.h and utime.h. Adjust all
sources not to include them and to include global.h at the right
place.
2001-09-07 17:52:19 +00:00
Pavel Roskin
a8ef641beb * x.h: Remove. Adjust all users. Make sure that global.h is
included instead.  Don't include sys/param.h unconditionally -
rely on global.h taking care of it.
* Makefile.in: Remove x.h.
2001-09-03 05:07:40 +00:00
Pavel Roskin
689c3fb9ac Replace "Can't" with "Cannot" everywhere. 2001-08-14 00:55:34 +00:00
Pavel Roskin
b201fe6077 * file.c: Warning fix. Include global.h before other local
includes.
* filegui.c: Likewise.
(fmd_init_i18n) [!ENABLE_NLS]: Completely disable.
* i18n.h [!ENABLE_NLS]: Warning fix.
* learn.c (init_learn): Move do_refresh() call immediately
before cleate_dlg().  Warning fix.
2001-08-03 04:47:52 +00:00
Pavel Roskin
2dd2dc2182 * file.c (panel_get_file): Use g_assert_not_reached().
* key.c (xgetch_second): Make static.
2001-07-20 16:19:28 +00:00
Pavel Roskin
bcfea1e371 * file.c: Add comments after every endif.
[HAVE_GNOME] [!WITH_BACKGROUND]: Fix compilation.
2001-06-06 16:32:31 +00:00
Pavel Roskin
67a118915d * file.c (copy_file_file): Initialize src_uid, src_gid, src_mode
and file_size to avoid a warning.
2001-06-02 00:00:51 +00:00
Pablo Saratxaga
85ae74cee2 Fixed various po files headers and syntax errors
added gettext:no-c-format in file.c for the prompt % codes
2001-01-26 13:49:28 +00:00
Pavel Roskin
e828211662 Updated address of Free Software Foundation 2000-08-22 22:50:00 +00:00
Timur Bakeyev
b192f71a88 2000-04-06 Timur Bakeyev <mc@bat.ru>
* file.c, widget.[ch]: Fixed long existing problems with filenames
	and input widgets, then char is greater than 128. They were processed
	incorrectly. As usual, char != unsigned char problem.

2000-03-03  Bjrn Eriksson  <mdeans@algonet.se>

	* Similar patches came from Andrew V. Samoilov <sav@bcs.zp.ua>.

	* mad.[ch]: Some functions wrongly by-passed mad_alloc*() (causing
	problems when later g_free()ed.

	* Added mad_strndup().

	* Repeated code collected in mad_fatal_error().

	* The gcc-extension/C99-standard variable argument macros (adding
	__FILE__, __LINE__ before ', ...') would be nice.

	* Alloc_idx_hint and code added, the mad code was way too slow for my
	poor computer. A hash-table would be nice.

	* (mad_strconcat, mad_strdup_vprintf): g_malloc and g_new are
	undefined at the top of mad.c, so mad_alloc must be used.
2000-04-09 22:37:50 +00:00
Pavel Machek
fae808dc5f 1999-11-03 Pavel Machek <pavel@artax.karlin.mff.cuni.cz>
* layout.c: always display status line. It contains vital
	information for ftpfs

1999-03-19  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>

	* profile.c (str_translate_newline_dup): someone likes to pass
	NULL's around. Warn instead of segfault.
1999-11-03 12:50:53 +00:00
Miguel de Icaza
2a8730b21c 1999-06-01 Robert Brady <rwb197@ecs.soton.ac.uk>
* 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.
1999-06-22 19:56:36 +00:00
Jonathan Blandford
0a28a308b3 1999-03-19 Jonathan Blandford <jrb@redhat.com>
* gcmd.c (dentry_apply_callback): new function.
	(gnome_new_launcher): We can now create new

1999-03-19  Jonathan Blandford  <jrb@redhat.com>

	* file.c (panel_operate): Ugly hack for GNOME.  We only treat the
	copy as if it were many files, and skip the only_one branch.
1999-03-19 17:13:33 +00:00
Miguel de Icaza
eb864a4949 1999-03-15 Federico Mena Quintero <federico@nuclecu.unam.mx>
* cmd.c (edit_symlink_cmd): Generate the title of the dialog after
	we have computed the source filename.
	(edit_symlink_cmd): Use g_strdup_printf() instead of g_strconcat()
	for better internationalization.

	* wtools.c: Removed unused function input_dialog_help_2().
	(real_input_dialog_help): Put this inside an "#ifndef HAVE_GNOME",
	because now the Gnome version implements its own pretty dialog.

1999-03-15  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gdialogs.c (real_input_dialog_help): Now we use a
	gnome_request_dialog() for generic input dialogs.  They look
	prettier and consistent now.
	(file_progress_show): Update the progress bars.  Thanks to Greg
	for noticing this!

	* Makefile.in: Removed references to gpopup.[co].
1999-03-16 00:11:32 +00:00
Gregory McLean
dbf6e0f2d3 Reverted my stuff as I can't test this in text mode (I have no clue how
to use mc in text mode)/

-- Greg
1999-03-15 22:39:22 +00:00
Gregory McLean
53777c2e35 Update the progress bars when copying stuff around.
-- Greg
1999-03-15 22:24:05 +00:00
Miguel de Icaza
824fdcc5b8 1999-03-12 Federico Mena Quintero <federico@nuclecu.unam.mx>
* file.c (erase_file): Here we need to mc_lstat(), not mc_stat().
	Since we use the resulting buf.st_size to update the progress, we
	need the size of unresolved links.  This also makes it consistent
	with screen.c:do_file_mark().

	* screen.c (select_item): Return immediately if this is a desktop
	panel.

1999-03-12  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gdesktop.c (create_panel_from_desktop): Do not assert that
	panel->count > 0, because we may actually not have any icons in
	the desktop.
	(desktop_popup): Reload the desktop once the popup menu is done.
	(create_panel_from_desktop): Be consistent with the way totals are
	computed in screen.c:do_file_mark().
1999-03-13 01:02:29 +00:00
Miguel de Icaza
ca1437548b 1999-03-10 Federico Mena Quintero <federico@nuclecu.unam.mx>
This is a semi-big slew of changes to integrate the DESKTOP_BRANCH
	into the main trunk.  Now the gdesktop code creates a temprary
	WPanel structure and passes it on to the core file management
	functions.  Also, the menu code is improved (we now use gpopup2;
	gpopup should go away shortly and gpopup2 should replace it).
	This makes the desktop act consistently with the file panels.
	Thanks to Jonathan for his help with this branch.

	* gdnd.c (perform_action): Use mc_lstat(), not mc_stat().

	* glayout.c (update_panels): Do not update the panels that are
	desktop panels.

	* gdesktop.c (icon_is_in_area): An icon is not considered to be in
	a 0x0 area.

	* gpopup2.c (handle_open): Fetch the desktop icon from the
	filename and call desktop_icon_info_open().

	* gdesktop.c (desktop_icon_info_get_by_filename): New function to
	look up a desktop icon by its filename.

	* glayout.c (create_new_menu_from): Test for the ".desktop" suffix
	correctly.

	* gpopup2.c (handle_properties): If the file comes from a desktop
	panel, always allow edition of the icon image.

1999-03-10  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* file.c (erase_dir): Erase metadata for directories as well.
	(erase_dir_iff_empty): Likewise.
	(copy_file_file): Delete/copy the metadata even for
	char/block/sock/fifo files.  Same thing for when copying symlinks.
	(copy_dir_dir): Delete/copy the metadata.
	(move_dir_dir): Delete/move the metadata.
	(recursive_erase): Delete the metadata.
1999-03-11 02:40:53 +00:00
Miguel de Icaza
0559c128f7 1999-03-10 Miguel de Icaza <miguel@nuclecu.unam.mx>
* gdialogs.c: Support ui->ctx to be NULL, as file.c will set this
	to NULL for background operations.


1999-03-10  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* utilunix.c (g_readlink): New function.  Wraps all the nonsense
	of readlink into a nice routine.

	* filegui.c: Support ui->ctx to be NULL, as file.c will set this
	to NULL for background operations.

	* background.c (do_background): Handle EINTR in dup2.
1999-03-11 02:00:12 +00:00
Miguel de Icaza
141653c3b8 Kill 2 more warnings -miguel 1999-03-09 04:55:49 +00:00
Owen Taylor
f197b80587 1999-02-24 Owen Taylor <otaylor@redhat.com>
* fileopctx.h file.c: Moved recursive delete query
	dialog into gdialogs.c for GNOME.

1999-02-25 Owen Taylor  <otaylor@redhat.com>

	* gdialogs.c (file_delete_query_recursive): GNOME
	replacement for recursive delete query dialog.
1999-02-26 00:27:23 +00:00
Miguel de Icaza
ad80925039 Add a global file to list directories that are slow (afs, etc)
Fixes for SuSE compilation.
1999-02-25 04:21:30 +00:00
Miguel de Icaza
9036590857 Keep the gnome-metadata in sync with the actions of the
file manager.

Miguel.
1999-02-09 00:31:57 +00:00
Miguel de Icaza
fbb8c67838 1999-01-31 Federico Mena Quintero <federico@nuclecu.unam.mx>
* file.c (panel_operate_generate_prompt): Removed the cmd_buf
	argument, since it is a global variable anyway (this function is
	only called once from file.c, and the global cmd_buf was being
	passed in).
	(panel_operate): Do not pass cmd_buf to
	panel_operate_generate_prompt().
	Thanks to Alexander Savelyev <fano@vcom.kiev.ua> for noticing this.
1999-01-31 19:15:48 +00:00
Timur Bakeyev
a39568367e Glibing..... (2)
Wed Jan 27 03:17:44 1999  Timur Bakeyev <mc@bat.ru>

	* Converted memory managment to Glib. Now we use g_new()/g_malloc()/
	g_strdup()/g_free() routings. Also, copy_strings() replaced by
	g_strconcat(), strcasecmp() -> g_strcasecmp(),and sprintf() by
	g_snprintf().

	* Some sequences of malloc()/sprintf() changed to g_strdup_printf().

	* mad.[ch]: Modified, to work with new GLib's memory managment. Fixed
	a missing #undef for tempnam, which caused dead loop. Add several new
	functions to emulate GLib memory managment.

	*main.c, mad.[ch]: Add a new switch  "-M", which allows to redirect MAD
	messages to the file.

	* util.[ch], utilunix.c: Modified, deleted our variants of strcasecmp()
	and strdup() - we have g_ equivalences. Remove get_full_name() - it is
	similar to concat_dir_and_file(). Some other tricks with g_* functions.

	* global.h: Modified, extended. Now it is main memory mangment include -
	i.e. all inclusions of <stdlib.h>, <malloc.h>, <glib.h>, "fs.h", "mem.h",
	"util.h" and "mad.h" done there. This elimanates problem with proper or-
	der of #include's.

	* All around the source - changed order of #include's, most of them gone
	to global.h (see above), minor changes, like "0" -> NULL in string func-
	tions.
1999-01-27 01:08:30 +00:00
Miguel de Icaza
9a43865fa6 Fix my regex.h breakage 1999-01-26 23:46:11 +00:00
Pavel Machek
121ecab640 Killed operation_names: op_names contain exactly same data. Added fixme. 1999-01-21 13:37:07 +00:00
Miguel de Icaza
9f2f16a96b 1999-01-18 Arturo Espinosa <arturo@nuclecu.unam.mx>
* file.c: Use N_ instead of _ for some of miguel's last tags.
1999-01-18 17:53:04 +00:00
Miguel de Icaza
f4298f2539 1999-01-18 Miguel de Icaza <miguel@nuclecu.unam.mx>
* file.c: Tag some more strings for localization.
1999-01-18 17:09:29 +00:00
Miguel de Icaza
e0faaa671f Merges from the FileOpContext-changes branch. Please see
the ChangeLogs for full information. - Federico
1999-01-14 01:10:32 +00:00
Miguel de Icaza
a7170a4f7a OS2 now uses property defines instead of OS2_NT 1999-01-10 08:55:35 +00:00
Miguel de Icaza
bd94a80089 1999-01-07 Miguel de Icaza <miguel@nuclecu.unam.mx>
* file.c (panel_operate_flags): Only show this dialog box if it is
	a copy or move operation
1999-01-08 03:43:35 +00:00
Miguel de Icaza
d24269087f Lots of usability changes for the desktop.
1998-12-29  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* gdesktop.c (desktop_icon_delete): New function, used for
	dicon_delete.
	(load_desktop_icons): Implemented the incremental reloading of
	desktop icons.  This should make the code much nicer.
	(reload_desktop_icons): Call x_flush_events to force a display at
	that point.

	* gpopup.c (dicon_delete): Implement this operation.
	(desktop_icon_execute): Use the existing implementation for
	launching desktop icons instead of a new hacked up version

	(desktop_icon_actions): Until copy/move is implemented, do not
	even list them to the user.

	* gdesktop.c (create_desktop_dir): No trashcan setup until it
	works.

	* gscren.c (panel_widget_motion): Use button 2 for dragging and
	asking.
1998-12-30 02:51:01 +00:00
Norbert Warmuth
ffb83af112 If someone experiences strange colors in the text edition
try "make clean; make".

Tue Dec 29 15:49:45 1998  Norbert Warmuth  <nwarmuth@privat.circular.de>

* doc/mc.sgml, mc1.in (Color section): minor polishing
(Layout section): documented Highlight...

* gnome/gmain.c: According to the man page the color keyword for executable
files 	is `executable' and not `execute' -- changed.

* file.c (progress_update_one): Ignore files in subdirectories
when panel totals haven't been computed.

(erase_dir, erase_file): update progress bar (i.e. make it work
for OP_DELETE).

(panel_operate_flags): Don't compute panel totals for OP_MOVE.
When moving files on the same filesystem computing totals might
last much longer than the actual move operation.

(various places): adpations for the above changes.

* slint.c (try_alloc_color_pair): Changed hardcoded values into
defines.

* color.c, text.c: Added color "stalledlink" which is used for
stalled symbolic links. Formerly "viewunderline" was used for
this (IMO bad because function and name didn't match).
According to the man page the color keyword for executable files
is `executable' and not `execute' -- changed.

* color.c, color.h: When using SLang some color indexes are not
freely choosable (DEFAULT_COLOR clashed with A_BOLD_REVERSE).
Solved by adding holes in color_map.

* find.c (do_search): fixed possible memory leak
1998-12-29 16:52:49 +00:00
Jonathan Blandford
66558b5f73 New menu view. Not everything works yet, but that's tomorrow's job.
also, spiffy new policy dialog for copying many files.
1998-12-29 04:15:30 +00:00
Norbert Warmuth
677cea13fd Fri Dec 25 20:19:57 1998 Norbert Warmuth <nwarmuth@privat.circular.de>
* file.c (panel_operate_flags): Don't change file progress count and
size twice for every file.

(panel_compute_totals): Initialize return values to zero before
calculating anything.

(panel_operate_def, panel_operate): return a value
1998-12-25 21:31:59 +00:00
Norbert Warmuth
23cc8d469c Thu Dec 24 18:30:53 1998 Norbert Warmuth <nwarmuth@privat.circular.de>
* configure.in: Deleted du checks

* INSTALL: Deleted --with-dusum documentation.

* doc/mc.sgml, mc.1.in: Completed documentation about the Options/
Configuration dialog. Added Advanced chown subsection. Deleted
variables from the Special settings section which are now covered
by the configuration dialog.

* gnome/layout: Adapted for the new option Compute Totals in the
Configuration dialog.

* screen.c (recalculate_panel_summary): new function which recalculates
the summary information for the mini-status.

* screen.c (panel_reload): use recalculate_panel_summary

* screen.c (do_file_mark): Honour that dirsizes computed is now a
per entry flag.

* option.c: Added Compute Totals to the configuration dialog.

* file.c (compute_dir_size): made non static

(panel_operate_flags): Don't compute directory sizes if verbose
operation are off.

* cmd.c (dirsizes_cmd): Rewritten to use compute_dir_size as suggested
by Miguel, i.e. get rid of du. Now the dirsizes_cmd honours a
selection and computes sizes only for marked directories. Possible
improvement: add a dialog (or C-C?) to abort computation.

* dir.h (file_entry), panel.h (WPanel): Made the dirsizes computed
flag a per file flag.

* dir.c, find.c, panelize.c, screen.c: Adapted to new file_entry and
WPanel structure.

* features.inc: Deleted DUSUM information

* mc.hlp: remade because of changes in doc/mc.1.in
1998-12-24 21:37:24 +00:00
Jonathan Blandford
2924e5bc78 Major query replace dialog cleanup 1998-12-22 23:38:39 +00:00
Miguel de Icaza
3ac4cfa567 Merge from MC_MIME_TYPE branch. It has so many bug fixes you wont
even recognize it.

1998-12-16  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* gdialogs.c (create_op_win): Remove second spurious packing.
	(create_op_win): OP_MOVE uses the same stuff OP_COPY does.  Fix
	this.
	(file_progress_show_target): More compliant to the original
	functions.
	(file_progress_show_source): More compliant to the original
	functions.

	* gdesktop.c (create_desktop_dir): Fix mem leak.

Miguel.
1998-12-17 04:51:24 +00:00
Michael Fulbright
c985074281 A few, cosmetic, gnome changes... -Jonathan 1998-12-11 18:36:41 +00:00
Pavel Machek
3e1a72d64d Some fixes in src/ part (want_stale_data is now done right) and more
daring code in vfs/ (errors are now reported instead of silently
ignored)
1998-12-09 20:22:53 +00:00
Miguel de Icaza
c9ac26efb4 1998-12-04 Miguel de Icaza <miguel@nuclecu.unam.mx>
* cmd.c, tree.c: Updated to the new file.c api.

	* file.c: (copy_file_file, copy_dir_dir, move_file_file,
	move_dir_dir): Updated to work with the new updating stuff.

	* setup.c: New configuration option to compute the totals to be
	transfered.

	* file.c (compute_dir_size, panel_compute_totals): New routines to
	compute the total ammount of information that is going to be
	transfered.
1998-12-04 23:39:41 +00:00
Miguel de Icaza
bf682eb9d1 Warning fixes.
Miguel.
1998-12-02 21:27:27 +00:00
Jonathan Blandford
b081558a24 moved functions around... 1998-12-02 04:33:26 +00:00