Commit graph

29 commits

Author SHA1 Message Date
Bradford Hovinen
1d03bbd1c5 1.5.7
2001-08-29  Bradford Hovinen  <hovinen@ximian.com>

        * RELEASE : 1.5.7

        * archive.c (foreach_build_list_cb): Don't unref the location if
        it is deleted
        (load_all_locations): Check if the location is marked deleted and
        throw it away if so

        * location.c (location_new): Don't unref parent location
2001-09-04 13:43:48 +00:00
Bradford Hovinen
579d651161 Unref the location given if we are not going to use it
2001-08-28  Bradford Hovinen  <hovinen@ximian.com>

	* archive.c (foreach_build_list_cb): Unref the location given if
	we are not going to use it
2001-08-29 14:23:01 +00:00
Bradford Hovinen
a82ec1573c Don't add the location to the list if it is marked deleted
2001-08-27  Bradford Hovinen  <hovinen@ximian.com>

	* archive.c (foreach_build_list_cb): Don't add the location to the
	list if it is marked deleted
	(impl_ConfigArchiver_Archive_createLocation): Do
	CORBA_Object_duplicate rather than bonobo_object_dup_ref

	* location.c (location_is_deleted): Implement

	* background-properties-capplet.c (setup_dialog): Initialize/free
	the CORBA environment structure
	(real_realize_cb): Put into an idle handler, called by
	realize_2_cb, the new timeout handler

	* preferences.c (preferences_load_from_bonobo_pbag):
	(preferences_load_from_bonobo_db): Extract from preferences_new_*

	* background-properties-capplet.c (property_change_cb):
	(realize_cb): Accept prefs structure in lieu of
	Bonobo_PropertyBag; don't reload the preferences structure from
	the property bag
	(property_change_cb): Call preferences_apply_event to modify the
	preferences structure appropriately
	(property_change_cb):
	(realize_cb): If the preferences structure is marked destroyed,
	just return
	(setup_dialog): Create a preferences structure from the property
	bag given and use that as the extra data passed to callbacks
	(realize_cb): Put into an idle handler real_realize_cb

	* preferences.c (preferences_apply_event): Implement

	* applier.c (output_compat_prefs): Make prefs const

	* applier.[ch]: Have applier_apply_prefs take a const Preferences
	structure

	* preferences.[ch]: Make preferences_clone take a const
	Preferences structure
2001-08-28 13:01:54 +00:00
Bradford Hovinen
b37d7f6897 Added exception RollbackDataNotFound Added exception LocationNotFound
2001-08-21  Bradford Hovinen  <hovinen@ximian.com>

	* idl/ConfigArchiver.idl: Added exception RollbackDataNotFound
	Added exception LocationNotFound

	* archive.c (archive_get_current_location_id): Use
	archive_create_location rather than location_new
	(archive_get_current_location_id): Unref the location once we have
	created it

	* archiver-client.c (location_client_load_rollback_data): Don't
	try to parse the XML file if there was an exception

	* bonobo-config-archiver.c (bonobo_config_archiver_new): Make sure
	to release_unref location and archive if aborting
	(bonobo_config_archiver_new): Reinitialize exception structure
	after we have succeeded

	* location.c (location_get_rollback_filename): Recurse on parent
	location if parent_chain is set to TRUE

	* archive.c (impl_ConfigArchiver_Archive_getLocation): Set the
	LocationNotFound exception if the location returned was NULL

	* location.c (impl_ConfigArchiver_Location_getRollbackFilename): Don't try

	* archive.c (impl_ConfigArchiver_Archive_getLocation): Don't try
	to CORBA_Object_duplicate the result if it is NULL
	(archive_get_location): Don't try to cast the result of
	location_open before we know whether it is non-NULL
	(impl_ConfigArchiver_Archive_createLocation): Call
	bonobo_object_from_servant on parent_ref->servant

	* location.c (location_destroy): Remove debugging message; make
	remaining debugging message more enlightening

	* archive.c (archive_get_child_locations): Rename from
	archive_foreach_child_location; rewrite to return a GList of child
	locations
	(impl_ConfigArchiver_Archive_getChildLocations): Use
	archive_get_child_locations
	(archive_destroy): Remove debugging message

	* bonobo-moniker-archiver.c (archive_resolve): Remove debugging
	messages

	* archive.c (archive_get_location): Remove debugging messages

	* config-log.c (dump_log): Remove debugging messages

	* archive.c (archive_foreach_child_location): Build a list first
	and then traverse it to avoid screwing up the tree traversal

	* mouse-properties-capplet.c (apply_settings): Use a CORBA
	exception structure
2001-08-22 13:56:23 +00:00
Bradford Hovinen (Gdict maintainer)
4e6a3b89d6 Added CORBA interface to the archiver 2001-08-20 15:47:57 +00:00
Bradford Hovinen
d30dd82590 Re-enable caching mechanism
2001-07-31  Bradford Hovinen  <hovinen@ximian.com>

	* archive.c (archive_get_current_location_id): Re-enable caching
	mechanism
2001-07-31 17:19:46 +00:00
Bradford Hovinen
aed49db337 Always retrieve the location id from gnome_config
2001-07-30  Bradford Hovinen  <hovinen@ximian.com>

	* archive.c (archive_get_current_location_id): Always retrieve
	the location id from gnome_config
2001-07-30 14:25:57 +00:00
Bradford Hovinen
bd3a67e6b6 Use capplet-archive/config/current/location for current location to avoid
2001-07-30  Bradford Hovinen  <hovinen@ximian.com>

	* archive.c (archive_set_current_location_id): Use
	capplet-archive/config/current/location for current location to
	avoid conflicting with control-center
2001-07-30 14:12:03 +00:00
Bradford Hovinen
31a81628c4 strdup the string to remove compiler warnings
2001-07-17  Bradford Hovinen  <hovinen@ximian.com>

	* archive.c (archive_unregister_location):
	(archive_get_location): strdup the string to remove compiler warnings
2001-07-17 19:08:55 +00:00
Bradford Hovinen
d6ec57650d Logic fix.
2001-07-12  Bradford Hovinen  <hovinen@ximian.com>

	* archive.c (archive_get_current_location_id): Logic fix.
2001-07-12 20:32:09 +00:00
Bradford Hovinen
85bc24c3f4 Clear appropriate global archive pointer
2001-07-12  Bradford Hovinen  <hovinen@ximian.com>

	* archive.c (archive_destroy): Clear appropriate global archive pointer
2001-07-12 20:31:25 +00:00
Bradford Hovinen
10e8b799a7 Only try to store a full snapshot if we are in a global archive
2001-07-12  Bradford Hovinen  <hovinen@ximian.com>

	* archive.c (archive_get_current_location_id): Only try to store a
	full snapshot if we are in a global archive

	* bonobo-config-archiver.c (bonobo_config_archiver_new): Store
	real_name in archiver_db
	(bonobo_config_archiver_destroy): Use archiver_db->real_name with
	bonobo_url_register
2001-07-12 19:15:36 +00:00
Bradford Hovinen
2c2fafbaad Use bonobo_object_unref rather than gtk_object_destroy
2001-07-09  Bradford Hovinen  <hovinen@ximian.com>

	* bonobo-config-archiver.c (bonobo_config_archiver_new): Use
	bonobo_object_unref rather than gtk_object_destroy

	* bonobo-moniker-archiver.c (archiver_resolve): Allow PropertyBag
	interface as well
	(parse_name): Set *location to NULL when there is no location

	* sound-properties.xml: Use 0 and 1 rather than true and false

	* capplet-dir.c (capplet_control_launch): Don't convert underscores
	to dashes in moniker
2001-07-09 19:56:27 +00:00
Bradford Hovinen
c09362e12a Use .gnome/capplet-archive rather than .gnome/control-center
2001-07-09  Bradford Hovinen  <hovinen@ximian.com>

	* archive.c (archive_load): Use .gnome/capplet-archive rather than
	.gnome/control-center

	* sound-properties-capplet.c (create_control_cb): Implement
	(main): Use create_control_cb

	* Bonobo_Control_Capplet_sound_properties.oaf: Use PropertyControl
	interface

	* sound-properties-capplet.c (create_dialog_cb): Update signature
	for use as a BonoboPropertyControlGetControlFn

	* capplet-dir.c (capplet_control_launch): Create a control by
	first retrieving the PropertyControl and then extracting the
	control from it
	(capplet_control_launch): Connect button signals
	(capplet_cancel_cb): Implement. Just destroy the app widget
	(capplet_ok_cb): Ditto.
	(capplet_control_launch): Don't use a BonoboArg when setting the
	property
2001-07-09 18:36:10 +00:00
Bradford Hovinen
33cc1312bc Renamed ximian_archiver to config_archiver
2001-07-05  Bradford Hovinen  <hovinen@ximian.com>

	* config-manager-dialog.c: Update #include locations
2001-07-05 21:57:01 +00:00
Bradford Hovinen
a18fd85bba Return NULL if the location id is NULL (archive_get_current_location_id):
2001-06-22  Bradford Hovinen  <hovinen@ximian.com>

	* archive.c (archive_get_current_location): Return NULL if the
	location id is NULL
	(archive_get_current_location_id): Return NULL if storing the
	snapshot results in an error

	* location.c (location_store): Add return values for error
	conditions; remove g_warning's and g_critical's
	(location_store_full_snapshot): Folded in store_snapshot_cb; don't
	call location_foreach_backend
	(location_store_full_snapshot): Return error condition; 0 on
	success, -1 if any backend failed

	* location-manager-dialog.c (location_manager_dialog_set_arg): Add
	a check to inform the user if the location manager was unable to
	form an initial configuration snapshot
2001-06-22 16:34:57 +00:00
Bradford Hovinen
47d682e446 Use location_get_changed_backends
2001-06-21  Bradford Hovinen  <hovinen@ximian.com>

	* archive.c (archive_set_current_location): Use
	location_get_changed_backends

	* location.c (location_get_changed_backends):
	(location_does_backend_change): Implement
	(create_backends_list):
	(merge_backend_lists): Moved from archive.c

	* gui-backend-list.c (gui_backend_list_launch_current): Use
	location_does_backend_change when deciding whether to pass
	--location on the command line
2001-06-21 21:48:12 +00:00
Bradford Hovinen
c39d6dff02 Dump the log after loading it from the slave (dump_log): Set first_old to
2001-06-20  Bradford Hovinen  <hovinen@ximian.com>

	* config-log.c (slave_data_cb): Dump the log after loading it from
	the slave
	(dump_log): Set first_old to the beginning of the list after the dump
	(do_load): Don't call do_unload
	(socket_data_cb): Check for hang up first
2001-06-20 17:21:33 +00:00
Bradford Hovinen
172e5c0939 Free the location path as we walk down it. (create_backends_list):
2001-06-19  Bradford Hovinen  <hovinen@ximian.com>

	* archive.c (archive_set_current_location): Free the location path
	as we walk down it.
	(create_backends_list): Implement
	(merge_backend_lists): Implement
	(archive_set_current_location): Call above functions
	(create_backends_list): Get rid of dummy first element
	(archive_set_current_location): Don't use backends->next when
	calling rollback_backends_to

	* location.c (run_backend_proc): Remember to close the writing end
	(location_store): Change g_error to g_critical
	(run_backend_proc): Don't getenv PATH
	(run_backend_proc): Make sure to close other end of pipe in child
	process

2001-06-18  Bradford Hovinen  <hovinen@ximian.com>

	* location.c (location_store): Use GString API

	* config-log.c (slave_data_cb): Don't use == to test IO conditions
2001-06-19 18:31:18 +00:00
Bradford Hovinen
a053572d1d Implement
2001-05-04  Bradford Hovinen  <hovinen@ximian.com>

	* cluster-location.c (cluster_location_do_rollback): Implement

	* location.c (location_do_rollback): Rename from do_rollback; make
	into virtual method
	(location_rollback_backend_to):
	(location_rollback_backend_by):
	(location_rollback_id): Update to call virtual method

	* Makefile.am (libximian_archiver_la_SOURCES):
	(include_HEADERS): Add cluster.[ch], cluster-location.[ch]

2001-05-03  Bradford Hovinen  <hovinen@ximian.com>

	* cluster.[ch]: New class

	* cluster.c (cluster_new):
	(cluster_load): Implement

	* archive.c (archive_set_arg): Add argument ARG_IS_GLOBAL
	(archive_class_init): Make ARG_PREFIX construct-only
	(archive_construct): Implement
	(do_load): Remove
	(archive_load): Use archive_construct; pass is_global as an
	argument to the object constructor
2001-05-05 03:05:20 +00:00
Bradford Hovinen
b38b466dc0 Use read rather than fread
2001-04-24  Bradford Hovinen  <hovinen@ximian.com>

	* location.c (location_store): Use read rather than fread

2001-04-23  Bradford Hovinen  <hovinen@ximian.com>

	* location.c (location_store): Block SIGPIPE
	(location_store): Fix off-by-one bug

	* archive.c (archive_get_current_location_id): Store a full
	snapshot of the system after the default location is created

	* location.c (run_backend_proc): Added parameter do_get to allow
	control of whether pipe is opened to read or write
	(store_snapshot_cb): Implement. Invokes the given backend with
	--get and stores the XML data
	(location_store_full_snapshot): Implement. Stores a complete
	snapshot with all backend data
	(subtract_xml_node): Assume all nodes are the same
	(location_store): Add string termination character
	(location_store): Only store data if any data were actually read

2001-04-22  Bradford Hovinen  <hovinen@ximian.com>

	* config-log.c (config_log_iterate): Use the correct data pointer
	to pass to the callback

	* location.c (location_new): Save the metadata for the newly
	created location right away

	* util.h: Defined DEBUG_MSG macro for debugging messages

	* archive.c (archive_unregister_location): Don't remove the
	location from the tree if the object is marked destroyed

2001-04-21  Bradford Hovinen  <hovinen@ximian.com>

	* archive.c (archive_destroy): Return if the archive was already
	destroyed

	* location.c (location_delete): Unregister the location before
	destroying it

	* config-log.c (config_log_delete): Set deleted flag
	(config_log_destroy): Only dump the log if the log is not marked
	deleted

	* location.c (location_delete): Check return value of rmdir

	* config-log.c (io_buffer_destroy): Call g_io_channel_close to
	close the GIOChannel
	(disconnect_socket): Force the removal of the source id from the
	main loop
	(config_log_destroy): Disconnect the socket after unloading, not
	before

	* location.c (location_delete): Remember to have a NULL at the end
	of arguments to g_strconcat ()

2001-04-22  Bradford Hovinen  <hovinen@ximian.com>

	* location-list.[ch]: Change to inherit GtkObject

	* location-manager-dialog.c (location_manager_dialog_destroy):
	Implement. Close and destroy all aggregated objects.
	(close_cb): Call gtk_object_destroy

2001-04-21  Bradford Hovinen  <hovinen@ximian.com>

	* location-manager-dialog.c (delete_location_cb): Don't let the
	user delete the default location
	(delete_ok_cb): Add some sanity checks to make sure the current
	location is set to something new if we delete it

	* location-list.c (location_list_select): Implement. Selectes the
	given location in the location list

	* location-manager-dialog.c (delete_ok_cb): Use correct semantics
	for callback
2001-04-25 00:57:59 +00:00
Bradford Hovinen
69ff23e49b Make sure to search location of XST backends
2001-04-11  Bradford Hovinen  <hovinen@ximian.com>

	* location.c (run_backend_proc): Make sure to search location of
	XST backends

	* Makefile.am (INCLUDES): Added XST_BACKEND_LOCATION
2001-04-12 01:43:31 +00:00
Bradford Hovinen
afc3333a5a Added test-1.sh and test-2.sh, the first two tests in the test suite
2001-02-19  Bradford Hovinen  <hovinen@ximian.com>

	* Added test-1.sh and test-2.sh, the first two tests in the test suite

	* location.c (location_foreach_backend): Update to use BackendNote
	(do_rollback): Don't do rollback if the doc is NULL
	(location_store_xml): Return if this location does not contain the
	backend specified
	(location_store_xml): Use fprintf rather than g_warning
	(subtract_xml_node):
	(merge_xml_nodes): Update child node while iterating

	* config-log.c (config_log_get_rollback_ids_for_date): Remove

	* location.c (location_set_arg): ref inherited object

	* main.c (main): Don't check if the location is default; don't
	create default location if non-existant
	(main): Signal error if the user is adding a location and did not
	specify a name
	(main): Use fprintf to signal the error that a location could not
	be opened
	(main): Signal error and exit when archive cannot be opened,
	rather than using g_error
	(do_add_location): Check for NULL location_id
	(do_add_location): Create default location if it does not exist
	and it is specified as the parent

	* archive.c (archive_get_current_location_id): Create the default
	location if it does not exist

	* backend-list.c (backend_list_contains): Use strcmp and iterate
	through the list

	* location.c (location_contains): Read whether the backend is in
	the master list if this location is toplevel

2001-02-18  Bradford Hovinen  <hovinen@ximian.com>

	* main.c (do_add_backend): Support ContainmentType specification
	(do_store): Support StoreType specification
	(struct store_options): Add set of options to support
	compare_parent, mask_previous, options
	(struct add_remove_backend_options): Add option for partial
	containment when adding backend

	* location.c (subtract_xml_node):
	(merge_xml_nodes):
	(compare_xml_nodes):
	(merge_xml_docs):
	(subtract_xml_doc): Implement. XML node compare/merging operations
	(location_store): Rewrite to call location_store_xml
	(location_store_xml): Include support for diffing with
	configuration data from parent config
	(location_dump_rollback_data): Rewrite to use
	location_load_rollback_data
	(dump_xml_data): Remove
	(do_rollback): Rewrite to use xmlDocDump; pass xmlDocPtr rather
	than id number
	(location_rollback_id): Add node merging support
	(location_rollback_backend_by):
	(location_rollback_backend_to): Rewrite to use
	location_load_rollback_data
	(location_rollback_backends_to): Rewrite to iterate through
	backend list and call location_rollback_backend_to for each
	element
	(location_rollback_all_to): Ditto

2001-02-14  Bradford Hovinen  <hovinen@ximian.com>

	* location.h (_ContainmentType): Introduce. Specifies the type of
	containment (full, partial, none), of a backend in a location

	* location.c: Added struct BackendNote; have backend list include
	type of containment as well as backend id
	(location_contains): Use find_note
	(find_note): Implement. Finds a note for the given backend id in
	the backend list
	(backend_note_new):
	(backend_note_destroy): Implement. Convenience functions for
	creating and destroying backend notes
	(load_metadata_file):
	(write_metadata_file): Read/write type of backend containment
	(full or partial)
	(location_add_backend): Pass parameter telling whether containment
	is partial
2001-02-20 02:43:35 +00:00
Bradford Hovinen
b3559fa5ac Use local time rather than Greenwich Mean Time
2001-01-25  Bradford Hovinen  <hovinen@ximian.com>

	* config-log.c (get_current_date): Use local time rather than
	Greenwich Mean Time

	* location.c (location_store_xml): Implement; copy from
	location_store
	(location_store): Free filename after use

	* archive.c (archive_load): Free prefix only if not global

	* location.c (location_rollback_all_to): Increment array

	* util.c (parse_date): Normalize values
2001-01-25 19:44:54 +00:00
Arturo Espinosa
1adfcbd424 More Helix to Ximian. Also, the new network code - untested - and a fix for backends/Makefile.am 2001-01-24 20:40:25 +00:00
Hans Petter
7beca6f9f9 Changed e-mail addresses: helixcode.com -> ximian.com. 2001-01-12 15:03:02 +00:00
Hans Petter
53acf19538 Updated copyright headers. 2001-01-12 14:40:26 +00:00
Bradford Hovinen
cef853b322 Use auxillary structure to pass data to traversal callback
2000-12-22  Bradford Hovinen  <hovinen@helixcode.com>

	* archive.c (foreach_cb):
	(archive_foreach_child_location): Use auxillary structure to pass
	data to traversal callback
	(archive_get_location):
	(archive_register_location): strdup() location ids
	(free_location_cb): free() key

	* Added config-manager-dialog.[ch], create-location-dialog.[ch],
	location-list.[ch], config-manager.c
	rollback-location-management.glade

2000-12-20  Bradford Hovinen  <hovinen@helixcode.com>

	* location.c (location_get_parent): Implement

	* archive.c (load_all_locations): Implement
	(foreach_cb):
	(archive_foreach_child_location): Implement
2000-12-22 21:44:22 +00:00
Bradford Hovinen
f089da2886 Added archiver directory Imported archiver for time travel, location
Tue Dec 19 09:04:00 2000  Bradford Hovinen  <hovinen@helixcode.com>

	* Makefile.am (SUBDIRS): Added archiver directory
	* archiver/*: Imported archiver for time travel, location management
2000-12-19 14:05:04 +00:00