mirror of
				https://gitlab.gnome.org/GNOME/glib.git
				synced 2025-10-31 16:32:18 +01:00 
			
		
		
		
	removed functions g_dataset_id_set_destroy and g_datalist_id_set_destroy
Thu Oct 8 06:47:27 1998 Tim Janik <timj@gtk.org> * glib.h: * gdataset.c: removed functions g_dataset_id_set_destroy and g_datalist_id_set_destroy and macros g_dataset_set_destroy and g_datalist_set_destroy. added new functions g_dataset_id_remove_no_notify and g_datalist_id_remove_no_notify plus associated macros g_dataset_remove_no_notify and g_datalist_remove_no_notify, which will remove a certain data portion without invokation of its destroy notifier, this should only be used in very controled circumstances.
This commit is contained in:
		
							
								
								
									
										20
									
								
								ChangeLog
									
									
									
									
									
								
							
							
						
						
									
										20
									
								
								ChangeLog
									
									
									
									
									
								
							| @@ -1,3 +1,15 @@ | ||||
| Thu Oct  8 06:47:27 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 	* glib.h: | ||||
| 	* gdataset.c: removed functions g_dataset_id_set_destroy and | ||||
| 	g_datalist_id_set_destroy and macros g_dataset_set_destroy and | ||||
| 	g_datalist_set_destroy. | ||||
| 	added new functions g_dataset_id_remove_no_notify and | ||||
| 	g_datalist_id_remove_no_notify plus associated macros | ||||
| 	g_dataset_remove_no_notify and g_datalist_remove_no_notify, which | ||||
|  	will remove a certain data portion without invokation of its destroy | ||||
|  	notifier, this should only be used in very controled circumstances. | ||||
|  | ||||
| Wed Oct  7 05:31:24 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 	* glib.h: | ||||
| @@ -311,7 +323,7 @@ Mon Aug 24 02:08:56 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 1998-08-18: Elliot Lee <sopwith@redhat.com> | ||||
|  | ||||
| 	. In gmem.c, add the ability to exclude memory chunks from the | ||||
| 	* In gmem.c, add the ability to exclude memory chunks from the | ||||
|  	  memory profiling information. | ||||
|  | ||||
| Tue Aug 18 18:23:09 PDT 1998 Manish Singh <yosh@gimp.org> | ||||
| @@ -723,7 +735,7 @@ Wed May 20 05:02:26 1998  Tim Janik  <timj@gtk.org> | ||||
|         g_mem_chunk_new(). | ||||
|         (g_chunk_free): new convenience macro to be consistent with g_chunk_new. | ||||
|  | ||||
| Tue, 19 May 1998 09:00:02 +0200  <EFBFBD>Paolo Molaro <lupus@debian.org> | ||||
| Tue, 19 May 1998 09:00:02 +0200  Paolo Molaro <lupus@debian.org> | ||||
|  | ||||
| 	* gcompletion.c: generic functions for com<TAB>pletion... | ||||
|  | ||||
| @@ -738,8 +750,8 @@ Sun May 17 10:48:27 1998  Tim Janik  <timj@gtk.org> | ||||
| Fri May 15 22:31:49 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 	* gscanner.c (g_scanner_unexp_token): removed spurious va_end(args) | ||||
|  	that for some reason didn't produce a compiler wrning on my machine | ||||
|  	(is va_end undefined for i386?). | ||||
|  	that for some reason didn't produce a compiler warning on my machine | ||||
|  	(is va_end defined to nothing for i386?). | ||||
|  | ||||
| Fri May 15 12:32:08 1998  rodo  <doulik@karlin.mff.cuni.cz> | ||||
|  | ||||
|   | ||||
| @@ -1,3 +1,15 @@ | ||||
| Thu Oct  8 06:47:27 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 	* glib.h: | ||||
| 	* gdataset.c: removed functions g_dataset_id_set_destroy and | ||||
| 	g_datalist_id_set_destroy and macros g_dataset_set_destroy and | ||||
| 	g_datalist_set_destroy. | ||||
| 	added new functions g_dataset_id_remove_no_notify and | ||||
| 	g_datalist_id_remove_no_notify plus associated macros | ||||
| 	g_dataset_remove_no_notify and g_datalist_remove_no_notify, which | ||||
|  	will remove a certain data portion without invokation of its destroy | ||||
|  	notifier, this should only be used in very controled circumstances. | ||||
|  | ||||
| Wed Oct  7 05:31:24 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 	* glib.h: | ||||
| @@ -311,7 +323,7 @@ Mon Aug 24 02:08:56 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 1998-08-18: Elliot Lee <sopwith@redhat.com> | ||||
|  | ||||
| 	. In gmem.c, add the ability to exclude memory chunks from the | ||||
| 	* In gmem.c, add the ability to exclude memory chunks from the | ||||
|  	  memory profiling information. | ||||
|  | ||||
| Tue Aug 18 18:23:09 PDT 1998 Manish Singh <yosh@gimp.org> | ||||
| @@ -723,7 +735,7 @@ Wed May 20 05:02:26 1998  Tim Janik  <timj@gtk.org> | ||||
|         g_mem_chunk_new(). | ||||
|         (g_chunk_free): new convenience macro to be consistent with g_chunk_new. | ||||
|  | ||||
| Tue, 19 May 1998 09:00:02 +0200  <EFBFBD>Paolo Molaro <lupus@debian.org> | ||||
| Tue, 19 May 1998 09:00:02 +0200  Paolo Molaro <lupus@debian.org> | ||||
|  | ||||
| 	* gcompletion.c: generic functions for com<TAB>pletion... | ||||
|  | ||||
| @@ -738,8 +750,8 @@ Sun May 17 10:48:27 1998  Tim Janik  <timj@gtk.org> | ||||
| Fri May 15 22:31:49 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 	* gscanner.c (g_scanner_unexp_token): removed spurious va_end(args) | ||||
|  	that for some reason didn't produce a compiler wrning on my machine | ||||
|  	(is va_end undefined for i386?). | ||||
|  	that for some reason didn't produce a compiler warning on my machine | ||||
|  	(is va_end defined to nothing for i386?). | ||||
|  | ||||
| Fri May 15 12:32:08 1998  rodo  <doulik@karlin.mff.cuni.cz> | ||||
|  | ||||
|   | ||||
| @@ -1,3 +1,15 @@ | ||||
| Thu Oct  8 06:47:27 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 	* glib.h: | ||||
| 	* gdataset.c: removed functions g_dataset_id_set_destroy and | ||||
| 	g_datalist_id_set_destroy and macros g_dataset_set_destroy and | ||||
| 	g_datalist_set_destroy. | ||||
| 	added new functions g_dataset_id_remove_no_notify and | ||||
| 	g_datalist_id_remove_no_notify plus associated macros | ||||
| 	g_dataset_remove_no_notify and g_datalist_remove_no_notify, which | ||||
|  	will remove a certain data portion without invokation of its destroy | ||||
|  	notifier, this should only be used in very controled circumstances. | ||||
|  | ||||
| Wed Oct  7 05:31:24 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 	* glib.h: | ||||
| @@ -311,7 +323,7 @@ Mon Aug 24 02:08:56 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 1998-08-18: Elliot Lee <sopwith@redhat.com> | ||||
|  | ||||
| 	. In gmem.c, add the ability to exclude memory chunks from the | ||||
| 	* In gmem.c, add the ability to exclude memory chunks from the | ||||
|  	  memory profiling information. | ||||
|  | ||||
| Tue Aug 18 18:23:09 PDT 1998 Manish Singh <yosh@gimp.org> | ||||
| @@ -723,7 +735,7 @@ Wed May 20 05:02:26 1998  Tim Janik  <timj@gtk.org> | ||||
|         g_mem_chunk_new(). | ||||
|         (g_chunk_free): new convenience macro to be consistent with g_chunk_new. | ||||
|  | ||||
| Tue, 19 May 1998 09:00:02 +0200  <EFBFBD>Paolo Molaro <lupus@debian.org> | ||||
| Tue, 19 May 1998 09:00:02 +0200  Paolo Molaro <lupus@debian.org> | ||||
|  | ||||
| 	* gcompletion.c: generic functions for com<TAB>pletion... | ||||
|  | ||||
| @@ -738,8 +750,8 @@ Sun May 17 10:48:27 1998  Tim Janik  <timj@gtk.org> | ||||
| Fri May 15 22:31:49 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 	* gscanner.c (g_scanner_unexp_token): removed spurious va_end(args) | ||||
|  	that for some reason didn't produce a compiler wrning on my machine | ||||
|  	(is va_end undefined for i386?). | ||||
|  	that for some reason didn't produce a compiler warning on my machine | ||||
|  	(is va_end defined to nothing for i386?). | ||||
|  | ||||
| Fri May 15 12:32:08 1998  rodo  <doulik@karlin.mff.cuni.cz> | ||||
|  | ||||
|   | ||||
| @@ -1,3 +1,15 @@ | ||||
| Thu Oct  8 06:47:27 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 	* glib.h: | ||||
| 	* gdataset.c: removed functions g_dataset_id_set_destroy and | ||||
| 	g_datalist_id_set_destroy and macros g_dataset_set_destroy and | ||||
| 	g_datalist_set_destroy. | ||||
| 	added new functions g_dataset_id_remove_no_notify and | ||||
| 	g_datalist_id_remove_no_notify plus associated macros | ||||
| 	g_dataset_remove_no_notify and g_datalist_remove_no_notify, which | ||||
|  	will remove a certain data portion without invokation of its destroy | ||||
|  	notifier, this should only be used in very controled circumstances. | ||||
|  | ||||
| Wed Oct  7 05:31:24 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 	* glib.h: | ||||
| @@ -311,7 +323,7 @@ Mon Aug 24 02:08:56 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 1998-08-18: Elliot Lee <sopwith@redhat.com> | ||||
|  | ||||
| 	. In gmem.c, add the ability to exclude memory chunks from the | ||||
| 	* In gmem.c, add the ability to exclude memory chunks from the | ||||
|  	  memory profiling information. | ||||
|  | ||||
| Tue Aug 18 18:23:09 PDT 1998 Manish Singh <yosh@gimp.org> | ||||
| @@ -723,7 +735,7 @@ Wed May 20 05:02:26 1998  Tim Janik  <timj@gtk.org> | ||||
|         g_mem_chunk_new(). | ||||
|         (g_chunk_free): new convenience macro to be consistent with g_chunk_new. | ||||
|  | ||||
| Tue, 19 May 1998 09:00:02 +0200  <EFBFBD>Paolo Molaro <lupus@debian.org> | ||||
| Tue, 19 May 1998 09:00:02 +0200  Paolo Molaro <lupus@debian.org> | ||||
|  | ||||
| 	* gcompletion.c: generic functions for com<TAB>pletion... | ||||
|  | ||||
| @@ -738,8 +750,8 @@ Sun May 17 10:48:27 1998  Tim Janik  <timj@gtk.org> | ||||
| Fri May 15 22:31:49 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 	* gscanner.c (g_scanner_unexp_token): removed spurious va_end(args) | ||||
|  	that for some reason didn't produce a compiler wrning on my machine | ||||
|  	(is va_end undefined for i386?). | ||||
|  	that for some reason didn't produce a compiler warning on my machine | ||||
|  	(is va_end defined to nothing for i386?). | ||||
|  | ||||
| Fri May 15 12:32:08 1998  rodo  <doulik@karlin.mff.cuni.cz> | ||||
|  | ||||
|   | ||||
| @@ -1,3 +1,15 @@ | ||||
| Thu Oct  8 06:47:27 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 	* glib.h: | ||||
| 	* gdataset.c: removed functions g_dataset_id_set_destroy and | ||||
| 	g_datalist_id_set_destroy and macros g_dataset_set_destroy and | ||||
| 	g_datalist_set_destroy. | ||||
| 	added new functions g_dataset_id_remove_no_notify and | ||||
| 	g_datalist_id_remove_no_notify plus associated macros | ||||
| 	g_dataset_remove_no_notify and g_datalist_remove_no_notify, which | ||||
|  	will remove a certain data portion without invokation of its destroy | ||||
|  	notifier, this should only be used in very controled circumstances. | ||||
|  | ||||
| Wed Oct  7 05:31:24 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 	* glib.h: | ||||
| @@ -311,7 +323,7 @@ Mon Aug 24 02:08:56 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 1998-08-18: Elliot Lee <sopwith@redhat.com> | ||||
|  | ||||
| 	. In gmem.c, add the ability to exclude memory chunks from the | ||||
| 	* In gmem.c, add the ability to exclude memory chunks from the | ||||
|  	  memory profiling information. | ||||
|  | ||||
| Tue Aug 18 18:23:09 PDT 1998 Manish Singh <yosh@gimp.org> | ||||
| @@ -723,7 +735,7 @@ Wed May 20 05:02:26 1998  Tim Janik  <timj@gtk.org> | ||||
|         g_mem_chunk_new(). | ||||
|         (g_chunk_free): new convenience macro to be consistent with g_chunk_new. | ||||
|  | ||||
| Tue, 19 May 1998 09:00:02 +0200  <EFBFBD>Paolo Molaro <lupus@debian.org> | ||||
| Tue, 19 May 1998 09:00:02 +0200  Paolo Molaro <lupus@debian.org> | ||||
|  | ||||
| 	* gcompletion.c: generic functions for com<TAB>pletion... | ||||
|  | ||||
| @@ -738,8 +750,8 @@ Sun May 17 10:48:27 1998  Tim Janik  <timj@gtk.org> | ||||
| Fri May 15 22:31:49 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 	* gscanner.c (g_scanner_unexp_token): removed spurious va_end(args) | ||||
|  	that for some reason didn't produce a compiler wrning on my machine | ||||
|  	(is va_end undefined for i386?). | ||||
|  	that for some reason didn't produce a compiler warning on my machine | ||||
|  	(is va_end defined to nothing for i386?). | ||||
|  | ||||
| Fri May 15 12:32:08 1998  rodo  <doulik@karlin.mff.cuni.cz> | ||||
|  | ||||
|   | ||||
| @@ -1,3 +1,15 @@ | ||||
| Thu Oct  8 06:47:27 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 	* glib.h: | ||||
| 	* gdataset.c: removed functions g_dataset_id_set_destroy and | ||||
| 	g_datalist_id_set_destroy and macros g_dataset_set_destroy and | ||||
| 	g_datalist_set_destroy. | ||||
| 	added new functions g_dataset_id_remove_no_notify and | ||||
| 	g_datalist_id_remove_no_notify plus associated macros | ||||
| 	g_dataset_remove_no_notify and g_datalist_remove_no_notify, which | ||||
|  	will remove a certain data portion without invokation of its destroy | ||||
|  	notifier, this should only be used in very controled circumstances. | ||||
|  | ||||
| Wed Oct  7 05:31:24 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 	* glib.h: | ||||
| @@ -311,7 +323,7 @@ Mon Aug 24 02:08:56 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 1998-08-18: Elliot Lee <sopwith@redhat.com> | ||||
|  | ||||
| 	. In gmem.c, add the ability to exclude memory chunks from the | ||||
| 	* In gmem.c, add the ability to exclude memory chunks from the | ||||
|  	  memory profiling information. | ||||
|  | ||||
| Tue Aug 18 18:23:09 PDT 1998 Manish Singh <yosh@gimp.org> | ||||
| @@ -723,7 +735,7 @@ Wed May 20 05:02:26 1998  Tim Janik  <timj@gtk.org> | ||||
|         g_mem_chunk_new(). | ||||
|         (g_chunk_free): new convenience macro to be consistent with g_chunk_new. | ||||
|  | ||||
| Tue, 19 May 1998 09:00:02 +0200  <EFBFBD>Paolo Molaro <lupus@debian.org> | ||||
| Tue, 19 May 1998 09:00:02 +0200  Paolo Molaro <lupus@debian.org> | ||||
|  | ||||
| 	* gcompletion.c: generic functions for com<TAB>pletion... | ||||
|  | ||||
| @@ -738,8 +750,8 @@ Sun May 17 10:48:27 1998  Tim Janik  <timj@gtk.org> | ||||
| Fri May 15 22:31:49 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 	* gscanner.c (g_scanner_unexp_token): removed spurious va_end(args) | ||||
|  	that for some reason didn't produce a compiler wrning on my machine | ||||
|  	(is va_end undefined for i386?). | ||||
|  	that for some reason didn't produce a compiler warning on my machine | ||||
|  	(is va_end defined to nothing for i386?). | ||||
|  | ||||
| Fri May 15 12:32:08 1998  rodo  <doulik@karlin.mff.cuni.cz> | ||||
|  | ||||
|   | ||||
| @@ -1,3 +1,15 @@ | ||||
| Thu Oct  8 06:47:27 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 	* glib.h: | ||||
| 	* gdataset.c: removed functions g_dataset_id_set_destroy and | ||||
| 	g_datalist_id_set_destroy and macros g_dataset_set_destroy and | ||||
| 	g_datalist_set_destroy. | ||||
| 	added new functions g_dataset_id_remove_no_notify and | ||||
| 	g_datalist_id_remove_no_notify plus associated macros | ||||
| 	g_dataset_remove_no_notify and g_datalist_remove_no_notify, which | ||||
|  	will remove a certain data portion without invokation of its destroy | ||||
|  	notifier, this should only be used in very controled circumstances. | ||||
|  | ||||
| Wed Oct  7 05:31:24 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 	* glib.h: | ||||
| @@ -311,7 +323,7 @@ Mon Aug 24 02:08:56 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 1998-08-18: Elliot Lee <sopwith@redhat.com> | ||||
|  | ||||
| 	. In gmem.c, add the ability to exclude memory chunks from the | ||||
| 	* In gmem.c, add the ability to exclude memory chunks from the | ||||
|  	  memory profiling information. | ||||
|  | ||||
| Tue Aug 18 18:23:09 PDT 1998 Manish Singh <yosh@gimp.org> | ||||
| @@ -723,7 +735,7 @@ Wed May 20 05:02:26 1998  Tim Janik  <timj@gtk.org> | ||||
|         g_mem_chunk_new(). | ||||
|         (g_chunk_free): new convenience macro to be consistent with g_chunk_new. | ||||
|  | ||||
| Tue, 19 May 1998 09:00:02 +0200  <EFBFBD>Paolo Molaro <lupus@debian.org> | ||||
| Tue, 19 May 1998 09:00:02 +0200  Paolo Molaro <lupus@debian.org> | ||||
|  | ||||
| 	* gcompletion.c: generic functions for com<TAB>pletion... | ||||
|  | ||||
| @@ -738,8 +750,8 @@ Sun May 17 10:48:27 1998  Tim Janik  <timj@gtk.org> | ||||
| Fri May 15 22:31:49 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 	* gscanner.c (g_scanner_unexp_token): removed spurious va_end(args) | ||||
|  	that for some reason didn't produce a compiler wrning on my machine | ||||
|  	(is va_end undefined for i386?). | ||||
|  	that for some reason didn't produce a compiler warning on my machine | ||||
|  	(is va_end defined to nothing for i386?). | ||||
|  | ||||
| Fri May 15 12:32:08 1998  rodo  <doulik@karlin.mff.cuni.cz> | ||||
|  | ||||
|   | ||||
| @@ -1,3 +1,15 @@ | ||||
| Thu Oct  8 06:47:27 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 	* glib.h: | ||||
| 	* gdataset.c: removed functions g_dataset_id_set_destroy and | ||||
| 	g_datalist_id_set_destroy and macros g_dataset_set_destroy and | ||||
| 	g_datalist_set_destroy. | ||||
| 	added new functions g_dataset_id_remove_no_notify and | ||||
| 	g_datalist_id_remove_no_notify plus associated macros | ||||
| 	g_dataset_remove_no_notify and g_datalist_remove_no_notify, which | ||||
|  	will remove a certain data portion without invokation of its destroy | ||||
|  	notifier, this should only be used in very controled circumstances. | ||||
|  | ||||
| Wed Oct  7 05:31:24 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 	* glib.h: | ||||
| @@ -311,7 +323,7 @@ Mon Aug 24 02:08:56 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 1998-08-18: Elliot Lee <sopwith@redhat.com> | ||||
|  | ||||
| 	. In gmem.c, add the ability to exclude memory chunks from the | ||||
| 	* In gmem.c, add the ability to exclude memory chunks from the | ||||
|  	  memory profiling information. | ||||
|  | ||||
| Tue Aug 18 18:23:09 PDT 1998 Manish Singh <yosh@gimp.org> | ||||
| @@ -723,7 +735,7 @@ Wed May 20 05:02:26 1998  Tim Janik  <timj@gtk.org> | ||||
|         g_mem_chunk_new(). | ||||
|         (g_chunk_free): new convenience macro to be consistent with g_chunk_new. | ||||
|  | ||||
| Tue, 19 May 1998 09:00:02 +0200  <EFBFBD>Paolo Molaro <lupus@debian.org> | ||||
| Tue, 19 May 1998 09:00:02 +0200  Paolo Molaro <lupus@debian.org> | ||||
|  | ||||
| 	* gcompletion.c: generic functions for com<TAB>pletion... | ||||
|  | ||||
| @@ -738,8 +750,8 @@ Sun May 17 10:48:27 1998  Tim Janik  <timj@gtk.org> | ||||
| Fri May 15 22:31:49 1998  Tim Janik  <timj@gtk.org> | ||||
|  | ||||
| 	* gscanner.c (g_scanner_unexp_token): removed spurious va_end(args) | ||||
|  	that for some reason didn't produce a compiler wrning on my machine | ||||
|  	(is va_end undefined for i386?). | ||||
|  	that for some reason didn't produce a compiler warning on my machine | ||||
|  	(is va_end defined to nothing for i386?). | ||||
|  | ||||
| Fri May 15 12:32:08 1998  rodo  <doulik@karlin.mff.cuni.cz> | ||||
|  | ||||
|   | ||||
							
								
								
									
										50
									
								
								gdataset.c
									
									
									
									
									
								
							
							
						
						
									
										50
									
								
								gdataset.c
									
									
									
									
									
								
							| @@ -199,8 +199,11 @@ g_data_set_internal (GData	  **datalist, | ||||
| 	       | ||||
| 	      /* the GData struct *must* already be unlinked | ||||
| 	       * when invoking the destroy function | ||||
| 	       * we use (data==NULL && destroy_func!=NULL) as | ||||
| 	       * a special hint combination to "steal" | ||||
| 	       * data without destroy notification | ||||
| 	       */ | ||||
| 	      if (list->destroy_func) | ||||
| 	      if (list->destroy_func && !destroy_func) | ||||
| 		list->destroy_func (list->data); | ||||
| 	       | ||||
| 	      if (g_data_cache_length < G_DATA_CACHE_MAX) | ||||
| @@ -277,6 +280,8 @@ g_dataset_id_set_data_full (gconstpointer  dataset_location, | ||||
|   register GDataset *dataset; | ||||
|    | ||||
|   g_return_if_fail (dataset_location != NULL); | ||||
|   if (!data) | ||||
|     g_return_if_fail (destroy_func == NULL); | ||||
|   if (!key_id) | ||||
|     { | ||||
|       if (data) | ||||
| @@ -309,6 +314,8 @@ g_datalist_id_set_data_full (GData	  **datalist, | ||||
| 			     GDestroyNotify destroy_func) | ||||
| { | ||||
|   g_return_if_fail (datalist != NULL); | ||||
|   if (!data) | ||||
|     g_return_if_fail (destroy_func == NULL); | ||||
|   if (!key_id) | ||||
|     { | ||||
|       if (data) | ||||
| @@ -321,48 +328,29 @@ g_datalist_id_set_data_full (GData	  **datalist, | ||||
| } | ||||
|  | ||||
| void | ||||
| g_dataset_id_set_destroy (gconstpointer  dataset_location, | ||||
| 			  GQuark         key_id, | ||||
| 			  GDestroyNotify destroy_func) | ||||
| g_dataset_id_remove_no_notify (gconstpointer  dataset_location, | ||||
| 			       GQuark         key_id) | ||||
| { | ||||
|   register GDataset *dataset; | ||||
|    | ||||
|   g_return_if_fail (dataset_location != NULL); | ||||
|   g_return_if_fail (key_id > 0); | ||||
|    | ||||
|   if (g_dataset_location_ht) | ||||
|   if (key_id && g_dataset_location_ht) | ||||
|     { | ||||
|       GDataset *dataset; | ||||
|    | ||||
|       dataset = g_dataset_lookup (dataset_location); | ||||
|       if (dataset) | ||||
| 	{ | ||||
| 	  register GData *list; | ||||
| 	   | ||||
| 	  for (list = dataset->datalist; list; list = list->next) | ||||
| 	    if (list->id == key_id) | ||||
| 	      { | ||||
| 		list->destroy_func = destroy_func; | ||||
| 		break; | ||||
| 	      } | ||||
| 	} | ||||
| 	g_data_set_internal (&dataset->datalist, key_id, NULL, (GDestroyNotify) 42, dataset); | ||||
|     } | ||||
| } | ||||
|  | ||||
| void | ||||
| g_datalist_id_set_destroy (GData	**datalist, | ||||
| 			   GQuark         key_id, | ||||
| 			   GDestroyNotify destroy_func) | ||||
| g_datalist_id_remove_no_notify (GData	**datalist, | ||||
| 				GQuark    key_id) | ||||
| { | ||||
|   register GData *list; | ||||
|    | ||||
|   g_return_if_fail (datalist != NULL); | ||||
|   g_return_if_fail (key_id > 0); | ||||
|    | ||||
|   for (list = *datalist; list; list = list->next) | ||||
|     if (list->id == key_id) | ||||
|       { | ||||
| 	list->destroy_func = destroy_func; | ||||
| 	break; | ||||
|       } | ||||
|  | ||||
|   if (key_id) | ||||
|     g_data_set_internal (datalist, key_id, NULL, (GDestroyNotify) 42, NULL); | ||||
| } | ||||
|  | ||||
| gpointer | ||||
|   | ||||
							
								
								
									
										52
									
								
								glib.h
									
									
									
									
									
								
							
							
						
						
									
										52
									
								
								glib.h
									
									
									
									
									
								
							| @@ -1562,34 +1562,33 @@ gchar*	  g_quark_to_string		(GQuark		 quark); | ||||
|  | ||||
| /* Keyed Data List | ||||
|  */ | ||||
| void	  g_datalist_init		(GData		**datalist); | ||||
| void	  g_datalist_clear		(GData		**datalist); | ||||
| gpointer  g_datalist_id_get_data	(GData		**datalist, | ||||
| 					 GQuark		  key_id); | ||||
| void	  g_datalist_id_set_data_full	(GData		**datalist, | ||||
| 					 GQuark		  key_id, | ||||
| 					 gpointer	  data, | ||||
| 					 GDestroyNotify	  destroy_func); | ||||
| void	  g_datalist_id_set_destroy	(GData		**datalist, | ||||
| 					 GQuark		  key_id, | ||||
| 					 GDestroyNotify	  destroy_func); | ||||
| void	  g_datalist_foreach		(GData		**datalist, | ||||
| 					 GDataForeachFunc func, | ||||
| 					 gpointer	  user_data); | ||||
| void	  g_datalist_init		 (GData		 **datalist); | ||||
| void	  g_datalist_clear		 (GData		 **datalist); | ||||
| gpointer  g_datalist_id_get_data	 (GData		 **datalist, | ||||
| 					  GQuark	   key_id); | ||||
| void	  g_datalist_id_set_data_full	 (GData		 **datalist, | ||||
| 					  GQuark	   key_id, | ||||
| 					  gpointer	   data, | ||||
| 					  GDestroyNotify   destroy_func); | ||||
| void	  g_datalist_id_remove_no_notify (GData		 **datalist, | ||||
| 					  GQuark	   key_id); | ||||
| void	  g_datalist_foreach		 (GData		 **datalist, | ||||
| 					  GDataForeachFunc func, | ||||
| 					  gpointer	   user_data); | ||||
| #define	  g_datalist_id_set_data(dl, q, d)	\ | ||||
|      g_datalist_id_set_data_full ((dl), (q), (d), NULL) | ||||
| #define	  g_datalist_id_remove_data(dl, q)	\ | ||||
|      g_datalist_id_set_data ((dl), (q), NULL) | ||||
| #define	  g_datalist_get_data(dl, k)		\ | ||||
|      (g_datalist_id_get_data ((dl), g_quark_try_string ((k)))) | ||||
|      (g_datalist_id_get_data ((dl), g_quark_try_string (k))) | ||||
| #define	  g_datalist_set_data_full(dl, k, d, f)	\ | ||||
|      g_datalist_id_set_data_full ((dl), g_quark_from_string ((k)), (d), (f)) | ||||
| #define	  g_datalist_set_destroy(dl, k, f)	\ | ||||
|      g_datalist_id_set_destroy ((dl), g_quark_try_string ((k)), (f)) | ||||
|      g_datalist_id_set_data_full ((dl), g_quark_from_string (k), (d), (f)) | ||||
| #define	  g_datalist_remove_no_notify(dl, k)	\ | ||||
|      g_datalist_id_remove_no_notify ((dl), g_quark_try_string (k)) | ||||
| #define	  g_datalist_set_data(dl, k, d)		\ | ||||
|      g_datalist_set_data_full ((dl), (k), (d), NULL) | ||||
| #define	  g_datalist_remove_data(dl, k)		\ | ||||
|      g_datalist_id_set_data ((dl), g_quark_try_string ((k)), NULL) | ||||
|      g_datalist_id_set_data ((dl), g_quark_try_string (k), NULL) | ||||
|  | ||||
|  | ||||
| /* Location Associated Keyed Data | ||||
| @@ -1601,9 +1600,8 @@ void	  g_dataset_id_set_data_full	(gconstpointer	  dataset_location, | ||||
| 					 GQuark		  key_id, | ||||
| 					 gpointer	  data, | ||||
| 					 GDestroyNotify	  destroy_func); | ||||
| void	  g_dataset_id_set_destroy	(gconstpointer	  dataset_location, | ||||
| 					 GQuark		  key_id, | ||||
| 					 GDestroyNotify	  destroy_func); | ||||
| void	  g_dataset_id_remove_no_notify	(gconstpointer	  dataset_location, | ||||
| 					 GQuark		  key_id); | ||||
| void	  g_dataset_foreach		(gconstpointer	  dataset_location, | ||||
| 					 GDataForeachFunc func, | ||||
| 					 gpointer	  user_data); | ||||
| @@ -1612,15 +1610,15 @@ void	  g_dataset_foreach		(gconstpointer	  dataset_location, | ||||
| #define	  g_dataset_id_remove_data(l, k)	\ | ||||
|      g_dataset_id_set_data ((l), (k), NULL) | ||||
| #define	  g_dataset_get_data(l, k)		\ | ||||
|      (g_dataset_id_get_data ((l), g_quark_try_string ((k)))) | ||||
|      (g_dataset_id_get_data ((l), g_quark_try_string (k))) | ||||
| #define	  g_dataset_set_data_full(l, k, d, f)	\ | ||||
|      g_dataset_id_set_data_full ((l), g_quark_from_string ((k)), (d), (f)) | ||||
| #define	  g_dataset_set_destroy(l, k, f)	\ | ||||
|      g_dataset_id_set_destroy ((l), g_quark_try_string ((k)), (f)) | ||||
|      g_dataset_id_set_data_full ((l), g_quark_from_string (k), (d), (f)) | ||||
| #define	  g_dataset_remove_no_notify(l, k)	\ | ||||
|      g_dataset_id_remove_no_notify ((l), g_quark_try_string (k)) | ||||
| #define	  g_dataset_set_data(l, k, d)		\ | ||||
|      g_dataset_set_data_full ((l), (k), (d), NULL) | ||||
| #define	  g_dataset_remove_data(l, k)		\ | ||||
|      g_dataset_id_set_data ((l), g_quark_try_string ((k)), NULL) | ||||
|      g_dataset_id_set_data ((l), g_quark_try_string (k), NULL) | ||||
|  | ||||
|  | ||||
| /* GScanner: Flexible lexical scanner for general purpose. | ||||
|   | ||||
| @@ -199,8 +199,11 @@ g_data_set_internal (GData	  **datalist, | ||||
| 	       | ||||
| 	      /* the GData struct *must* already be unlinked | ||||
| 	       * when invoking the destroy function | ||||
| 	       * we use (data==NULL && destroy_func!=NULL) as | ||||
| 	       * a special hint combination to "steal" | ||||
| 	       * data without destroy notification | ||||
| 	       */ | ||||
| 	      if (list->destroy_func) | ||||
| 	      if (list->destroy_func && !destroy_func) | ||||
| 		list->destroy_func (list->data); | ||||
| 	       | ||||
| 	      if (g_data_cache_length < G_DATA_CACHE_MAX) | ||||
| @@ -277,6 +280,8 @@ g_dataset_id_set_data_full (gconstpointer  dataset_location, | ||||
|   register GDataset *dataset; | ||||
|    | ||||
|   g_return_if_fail (dataset_location != NULL); | ||||
|   if (!data) | ||||
|     g_return_if_fail (destroy_func == NULL); | ||||
|   if (!key_id) | ||||
|     { | ||||
|       if (data) | ||||
| @@ -309,6 +314,8 @@ g_datalist_id_set_data_full (GData	  **datalist, | ||||
| 			     GDestroyNotify destroy_func) | ||||
| { | ||||
|   g_return_if_fail (datalist != NULL); | ||||
|   if (!data) | ||||
|     g_return_if_fail (destroy_func == NULL); | ||||
|   if (!key_id) | ||||
|     { | ||||
|       if (data) | ||||
| @@ -321,48 +328,29 @@ g_datalist_id_set_data_full (GData	  **datalist, | ||||
| } | ||||
|  | ||||
| void | ||||
| g_dataset_id_set_destroy (gconstpointer  dataset_location, | ||||
| 			  GQuark         key_id, | ||||
| 			  GDestroyNotify destroy_func) | ||||
| g_dataset_id_remove_no_notify (gconstpointer  dataset_location, | ||||
| 			       GQuark         key_id) | ||||
| { | ||||
|   register GDataset *dataset; | ||||
|    | ||||
|   g_return_if_fail (dataset_location != NULL); | ||||
|   g_return_if_fail (key_id > 0); | ||||
|    | ||||
|   if (g_dataset_location_ht) | ||||
|   if (key_id && g_dataset_location_ht) | ||||
|     { | ||||
|       GDataset *dataset; | ||||
|    | ||||
|       dataset = g_dataset_lookup (dataset_location); | ||||
|       if (dataset) | ||||
| 	{ | ||||
| 	  register GData *list; | ||||
| 	   | ||||
| 	  for (list = dataset->datalist; list; list = list->next) | ||||
| 	    if (list->id == key_id) | ||||
| 	      { | ||||
| 		list->destroy_func = destroy_func; | ||||
| 		break; | ||||
| 	      } | ||||
| 	} | ||||
| 	g_data_set_internal (&dataset->datalist, key_id, NULL, (GDestroyNotify) 42, dataset); | ||||
|     } | ||||
| } | ||||
|  | ||||
| void | ||||
| g_datalist_id_set_destroy (GData	**datalist, | ||||
| 			   GQuark         key_id, | ||||
| 			   GDestroyNotify destroy_func) | ||||
| g_datalist_id_remove_no_notify (GData	**datalist, | ||||
| 				GQuark    key_id) | ||||
| { | ||||
|   register GData *list; | ||||
|    | ||||
|   g_return_if_fail (datalist != NULL); | ||||
|   g_return_if_fail (key_id > 0); | ||||
|    | ||||
|   for (list = *datalist; list; list = list->next) | ||||
|     if (list->id == key_id) | ||||
|       { | ||||
| 	list->destroy_func = destroy_func; | ||||
| 	break; | ||||
|       } | ||||
|  | ||||
|   if (key_id) | ||||
|     g_data_set_internal (datalist, key_id, NULL, (GDestroyNotify) 42, NULL); | ||||
| } | ||||
|  | ||||
| gpointer | ||||
|   | ||||
							
								
								
									
										52
									
								
								glib/glib.h
									
									
									
									
									
								
							
							
						
						
									
										52
									
								
								glib/glib.h
									
									
									
									
									
								
							| @@ -1562,34 +1562,33 @@ gchar*	  g_quark_to_string		(GQuark		 quark); | ||||
|  | ||||
| /* Keyed Data List | ||||
|  */ | ||||
| void	  g_datalist_init		(GData		**datalist); | ||||
| void	  g_datalist_clear		(GData		**datalist); | ||||
| gpointer  g_datalist_id_get_data	(GData		**datalist, | ||||
| 					 GQuark		  key_id); | ||||
| void	  g_datalist_id_set_data_full	(GData		**datalist, | ||||
| 					 GQuark		  key_id, | ||||
| 					 gpointer	  data, | ||||
| 					 GDestroyNotify	  destroy_func); | ||||
| void	  g_datalist_id_set_destroy	(GData		**datalist, | ||||
| 					 GQuark		  key_id, | ||||
| 					 GDestroyNotify	  destroy_func); | ||||
| void	  g_datalist_foreach		(GData		**datalist, | ||||
| 					 GDataForeachFunc func, | ||||
| 					 gpointer	  user_data); | ||||
| void	  g_datalist_init		 (GData		 **datalist); | ||||
| void	  g_datalist_clear		 (GData		 **datalist); | ||||
| gpointer  g_datalist_id_get_data	 (GData		 **datalist, | ||||
| 					  GQuark	   key_id); | ||||
| void	  g_datalist_id_set_data_full	 (GData		 **datalist, | ||||
| 					  GQuark	   key_id, | ||||
| 					  gpointer	   data, | ||||
| 					  GDestroyNotify   destroy_func); | ||||
| void	  g_datalist_id_remove_no_notify (GData		 **datalist, | ||||
| 					  GQuark	   key_id); | ||||
| void	  g_datalist_foreach		 (GData		 **datalist, | ||||
| 					  GDataForeachFunc func, | ||||
| 					  gpointer	   user_data); | ||||
| #define	  g_datalist_id_set_data(dl, q, d)	\ | ||||
|      g_datalist_id_set_data_full ((dl), (q), (d), NULL) | ||||
| #define	  g_datalist_id_remove_data(dl, q)	\ | ||||
|      g_datalist_id_set_data ((dl), (q), NULL) | ||||
| #define	  g_datalist_get_data(dl, k)		\ | ||||
|      (g_datalist_id_get_data ((dl), g_quark_try_string ((k)))) | ||||
|      (g_datalist_id_get_data ((dl), g_quark_try_string (k))) | ||||
| #define	  g_datalist_set_data_full(dl, k, d, f)	\ | ||||
|      g_datalist_id_set_data_full ((dl), g_quark_from_string ((k)), (d), (f)) | ||||
| #define	  g_datalist_set_destroy(dl, k, f)	\ | ||||
|      g_datalist_id_set_destroy ((dl), g_quark_try_string ((k)), (f)) | ||||
|      g_datalist_id_set_data_full ((dl), g_quark_from_string (k), (d), (f)) | ||||
| #define	  g_datalist_remove_no_notify(dl, k)	\ | ||||
|      g_datalist_id_remove_no_notify ((dl), g_quark_try_string (k)) | ||||
| #define	  g_datalist_set_data(dl, k, d)		\ | ||||
|      g_datalist_set_data_full ((dl), (k), (d), NULL) | ||||
| #define	  g_datalist_remove_data(dl, k)		\ | ||||
|      g_datalist_id_set_data ((dl), g_quark_try_string ((k)), NULL) | ||||
|      g_datalist_id_set_data ((dl), g_quark_try_string (k), NULL) | ||||
|  | ||||
|  | ||||
| /* Location Associated Keyed Data | ||||
| @@ -1601,9 +1600,8 @@ void	  g_dataset_id_set_data_full	(gconstpointer	  dataset_location, | ||||
| 					 GQuark		  key_id, | ||||
| 					 gpointer	  data, | ||||
| 					 GDestroyNotify	  destroy_func); | ||||
| void	  g_dataset_id_set_destroy	(gconstpointer	  dataset_location, | ||||
| 					 GQuark		  key_id, | ||||
| 					 GDestroyNotify	  destroy_func); | ||||
| void	  g_dataset_id_remove_no_notify	(gconstpointer	  dataset_location, | ||||
| 					 GQuark		  key_id); | ||||
| void	  g_dataset_foreach		(gconstpointer	  dataset_location, | ||||
| 					 GDataForeachFunc func, | ||||
| 					 gpointer	  user_data); | ||||
| @@ -1612,15 +1610,15 @@ void	  g_dataset_foreach		(gconstpointer	  dataset_location, | ||||
| #define	  g_dataset_id_remove_data(l, k)	\ | ||||
|      g_dataset_id_set_data ((l), (k), NULL) | ||||
| #define	  g_dataset_get_data(l, k)		\ | ||||
|      (g_dataset_id_get_data ((l), g_quark_try_string ((k)))) | ||||
|      (g_dataset_id_get_data ((l), g_quark_try_string (k))) | ||||
| #define	  g_dataset_set_data_full(l, k, d, f)	\ | ||||
|      g_dataset_id_set_data_full ((l), g_quark_from_string ((k)), (d), (f)) | ||||
| #define	  g_dataset_set_destroy(l, k, f)	\ | ||||
|      g_dataset_id_set_destroy ((l), g_quark_try_string ((k)), (f)) | ||||
|      g_dataset_id_set_data_full ((l), g_quark_from_string (k), (d), (f)) | ||||
| #define	  g_dataset_remove_no_notify(l, k)	\ | ||||
|      g_dataset_id_remove_no_notify ((l), g_quark_try_string (k)) | ||||
| #define	  g_dataset_set_data(l, k, d)		\ | ||||
|      g_dataset_set_data_full ((l), (k), (d), NULL) | ||||
| #define	  g_dataset_remove_data(l, k)		\ | ||||
|      g_dataset_id_set_data ((l), g_quark_try_string ((k)), NULL) | ||||
|      g_dataset_id_set_data ((l), g_quark_try_string (k), NULL) | ||||
|  | ||||
|  | ||||
| /* GScanner: Flexible lexical scanner for general purpose. | ||||
|   | ||||
		Reference in New Issue
	
	Block a user