Commit Graph

6504 Commits

Author SHA1 Message Date
Hans Petter Jansson
991b625aea Rewrite most of GHashTable to use open addressing with quadratic probing
2008-09-19  Hans Petter Jansson  <hpj@novell.com>

	Rewrite most of GHashTable to use open addressing with quadratic
	probing instead of chaining. This has the potential to reduce memory
	fragmentation significantly, while being slightly faster due to
	better locality and no need to call alloc/free functions for nodes.
	Benchmarks suggest it also uses less memory overall.

	* glib/ghash.c (prime_mod): Table of suitable primes for
	initial-probe distribution.
	(g_hash_table_set_shift): New function.
	(g_hash_table_find_closest_shift): New function.
	(g_hash_table_set_shift_from_size): New function.
	(g_hash_table_lookup_node_for_insertion): New function.
	(g_hash_table_lookup_node): Rewritten to return node index instead of
	pointer, use quadratic probe on flat table, and not return insertion
	data. The latter saves some computation for read-only lookups.
	(g_hash_table_remove_node): Rewrite to take a pointer directly to the
	node structure to remove, and clear that. Remove unlinking code.
	(g_hash_table_remove_all_nodes): Rewrite to not clear nodes
	individually, but en masse using memset () after potentially calling
	notify functions.
	(iter_remove_or_steal): Use new data structure and algorithm. Vastly
	simplified - now just a call to g_hash_table_remove_node ().
	(g_hash_table_resize): New resize code, re-indexing with new prime
	and cleaning up tombstones.
	(g_hash_table_maybe_resize): Table may hold 8 buckets minimum, no less
	than 1/4 load excluding tombstones, and no more than 15/16 load
	including tombstones. These numbers are the results of a lot of
	benchmarking with multiple complex applications, and should not be
	changed lightly.
	(g_hash_table_iter_next)
	(g_hash_table_lookup)
	(g_hash_table_lookup_extended)
	(g_hash_table_insert_internal)
	(g_hash_table_remove_internal)
	(g_hash_table_foreach_remove_or_steal)
	(g_hash_table_foreach)
	(g_hash_table_find)
	(g_hash_table_get_keys)
	(g_hash_table_get_values): Use new data structure and algorithm,
	fairly trivial changes.


svn path=/trunk/; revision=7518
2008-09-20 04:05:11 +00:00
Mugurel Tudor
39a0716c92 Updated Romanian translation by Mişu Moldovan <dumol@gnome.ro>
2008-09-19  Mugurel Tudor  <mugurelu@gnome.ro>

	* ro.po: Updated Romanian translation by
	Mişu Moldovan <dumol@gnome.ro>

svn path=/trunk/; revision=7515
2008-09-19 14:09:48 +00:00
Tor Lillqvist
4c264998cb Look for man pages in share/man.
2008-09-19  Tor Lillqvist  <tml@novell.com>

	* glib-zip.in: Look for man pages in share/man.


svn path=/trunk/; revision=7512
2008-09-19 10:42:04 +00:00
Tor Lillqvist
bc8e1dd8c1 glib/gutils.c (_glib_get_dll_directory) Be a bit less restrictive, look
2008-09-19  Tor Lillqvist  <tml@novell.com>

	* glib/gutils.c (_glib_get_dll_directory)
	* glib/gspawn-win32.c (do_spawn_with_pipes): Be a bit less
	restrictive, look for the helper programs in the same folder where
	the GLib DLL is, not necessarily in a "bin" subfolder of the top
	GLib installation folder.


svn path=/trunk/; revision=7511
2008-09-19 10:20:41 +00:00
Matthias Clasen
a44ff6ef33 Bump version to 2.19.0
2008-09-18  Matthias Clasen <mclasen@redhat.com>

        * configure.in: Bump version to 2.19.0

        * ChangeLog.pre-2-18: rotate ChangeLog

        * === branch for 2.18 ===


svn path=/trunk/; revision=7510
2008-09-18 14:47:14 +00:00
Djihed Afifi
c7b74d417e Updated Arabic Translation by Anas Afif Emad.
* Updated Arabic Translation by Anas Afif Emad. 

svn path=/trunk/; revision=7508
2008-09-18 02:02:45 +00:00
Matthias Clasen
d369843405 Bump version
svn path=/trunk/; revision=7507
2008-09-17 23:58:48 +00:00
Matthias Clasen
ac516ab07e 2.18.1
svn path=/trunk/; revision=7505
2008-09-17 23:56:04 +00:00
Matthias Clasen
042345d59e Updates
svn path=/trunk/; revision=7504
2008-09-17 22:52:48 +00:00
Krishnababu Krothapalli
e9b8e8cf64 Updated Telugu Translation.
svn path=/trunk/; revision=7503
2008-09-17 14:17:06 +00:00
Krishnababu Krothapalli
8c488610dc Updated Changelog file
svn path=/trunk/; revision=7502
2008-09-17 14:16:07 +00:00
Michael Natterer
2623f6fc0f can't assign the return value of g_strdupv() to an array. Fill the array
2008-09-16  Michael Natterer  <mitch@imendio.com>

	* gcontenttype.c (g_content_type_guess): can't assign the return
	value of g_strdupv() to an array. Fill the array manually with
	const strings instead (it is never freed anyway). Fixes the
	build. Also fixed indentation.


svn path=/trunk/; revision=7501
2008-09-16 11:36:52 +00:00
Wouter Bolsterlee
1d627b703f Fix trivial typo to unbreak the build (there was a colon instead of a
2008-09-16  Wouter Bolsterlee  <wbolster@svn.gnome.org>

	* gdesktopappinfo.c (g_desktop_app_info_new_from_keyfile):
	Fix trivial typo to unbreak the build (there was a colon
	instead of a semicolon at the end of a statement).


svn path=/trunk/; revision=7500
2008-09-16 09:13:19 +00:00
Tor Lillqvist
9d3d04412b Add an "install" project that copies the deliverables into a place
from which projects in other packages will use them.

svn path=/trunk/; revision=7499
2008-09-16 01:04:55 +00:00
Tor Lillqvist
553a13c641 Use "win64" in the names of the helper exes when built for 64-bit
Windows, like in the Makefile.am.


svn path=/trunk/; revision=7498
2008-09-15 23:10:10 +00:00
Tor Lillqvist
47d23c1888 New folder. Project files for use with MSVS9. Based on the MSVS8 project
2008-09-16  Tor Lillqvist  <tml@novell.com>

	* win32/vs9: New folder. Project files for use with MSVS9. Based
	on the MSVS8 project files is win32/vs8. Four configurations:
	Debug|Win32, Release|Win32, Debug|x64 and Release|x64. DLL names
	simplified to of the style glib-2-vs9.dll.


svn path=/trunk/; revision=7497
2008-09-15 22:59:44 +00:00
Tor Lillqvist
6af6a8dab0 time_t is 64 bits in all the newer Microsoft C libraries, not just 64-bit
2008-09-16  Tor Lillqvist  <tml@novell.com>

	* glib/gtimer.c (g_time_val_to_iso8601): time_t is 64 bits in all
	the newer Microsoft C libraries, not just 64-bit ones. So to avoid
	crash if compiled with newer MSVSes, use a separate time_t
	variable in all cases on Windows.


svn path=/trunk/; revision=7496
2008-09-15 22:52:12 +00:00
Tor Lillqvist
d4ad716a05 Define G_BREAKPOINT() also for 64-bit MSVC, using the __debugbreak()
2008-09-16  Tor Lillqvist  <tml@novell.com>

	* glib/gbacktrace.h: Define G_BREAKPOINT() also for 64-bit MSVC,
	using the __debugbreak() intrinsic.


svn path=/trunk/; revision=7495
2008-09-15 22:19:38 +00:00
Behdad Esfahbod
bf6222e785 Fix description of module shared library suffix.
2008-09-15  Behdad Esfahbod  <behdad@gnome.org>

        * configure.in: Fix description of module shared library suffix.


svn path=/trunk/; revision=7494
2008-09-15 18:59:25 +00:00
Tor Lillqvist
9fcbe1f2a9 Missed one /win32...
svn path=/trunk/; revision=7493
2008-09-15 16:52:20 +00:00
Matthias Clasen
cdded60e29 Ignore an empty Path value
svn path=/trunk/; revision=7492
2008-09-15 16:26:38 +00:00
Matthias Clasen
f634171ec5 Bug 551681 – g_content_type_guess() too naive with filenames
* gcontenttype.c (g_content_type_guess): Check whether there's a '/'
        at the end of the filename, and declare it a directory.
        Patch by Bastien Nocera


svn path=/trunk/; revision=7491
2008-09-15 16:06:05 +00:00
Tor Lillqvist
4b92cd39fd Drop the "win32" part from under "dependencies" so that the same project
2008-09-15  Tor Lillqvist  <tml@novell.com>

	* win32/vs8/*.vcproj: Drop the "win32" part from under
	"dependencies" so that the same project files can be used also
	for 64-bit compilation by just having a different
	"dependencies" folder containing 64-bit packages instead. At
	least, I hope it will work out some way like that. MSVS
	project files really are a pain to maintain. Much information
	is typically copied for four different configurations
	"Debug|Win32", "Release|Win32", "Debug|x64" and "Release|x64"
	instead of having common stuff listed just once and only different
	parametrisations. Or am I missing something?
	
	Make the "Release" configuration work, too. Use correct character
	set for the gspawn-win32-helper programs. Use correct subsystem
	for the non-console one.


svn path=/trunk/; revision=7490
2008-09-15 16:04:33 +00:00
Tor Lillqvist
b006f4832f Update to match what the configure script produces. Just for uniformity,
2008-09-15  Tor Lillqvist  <tml@novell.com>

	* config.h.win32.in: Update to match what the configure script
	produces. Just for uniformity, only commented out parts affected.


svn path=/trunk/; revision=7489
2008-09-15 15:14:00 +00:00
Tor Lillqvist
2b242404c8 Don't use Detect64BitPortabilityProblems as those warnings are misleading.
2008-09-15  Tor Lillqvist  <tml@novell.com>

	* win32/vs8/*.vcproj: Don't use Detect64BitPortabilityProblems
	as those warnings are misleading. They don't take into
	consideration ifdefs in	glibconfig.h and elsewhere for _WIN64.


svn path=/trunk/; revision=7488
2008-09-15 14:56:23 +00:00
Matthias Clasen
4d090b47b8 Add forgotten function
svn path=/trunk/; revision=7487
2008-09-15 14:56:22 +00:00
Tor Lillqvist
14dab6a3d2 win32/vs8/gobject.vcproj Drop G*_EXPORTS from PreprocessorDefinitions,
2008-09-15  Tor Lillqvist  <tml@novell.com>

	* win32/vs8/gobject.vcproj
	* win32/vs8/gthread.vcproj: Drop G*_EXPORTS from
	PreprocessorDefinitions, nothing looks for such
	macros.


svn path=/trunk/; revision=7486
2008-09-15 14:36:51 +00:00
Tor Lillqvist
9f6848eb91 Add DLL_EXPORT to export also the GLIB_VAR variables that aren't mentioned
2008-09-15  Tor Lillqvist  <tml@novell.com>

	* win32/vs8/glib.vcproj: Add DLL_EXPORT to export also the
	GLIB_VAR variables that aren't mentioned in glib.symbols.


svn path=/trunk/; revision=7485
2008-09-15 14:26:26 +00:00
Tor Lillqvist
7e24ad52ca Update to match the Makefile.am files. Drop G*_EXPORTS from
2008-09-15  Tor Lillqvist  <tml@novell.com>

	* win32/vs8/*.vcproj: Update to match the Makefile.am files. Drop
	G*_EXPORTS from PreprocessorDefinitions, nothing looks for such
	macros. Add G_DISABLE_DEPRECATED. Add PCRE_STATIC for glib to
	avoid exporting the pcre functions. Add G_LOG_DOMAIN for gobject.


svn path=/trunk/; revision=7484
2008-09-15 14:04:51 +00:00
Djihed Afifi
8a300eab70 Updated Arabic Translation by Khaled Hosny.
* Updated Arabic Translation by Khaled Hosny. 

svn path=/trunk/; revision=7483
2008-09-15 09:35:57 +00:00
Djihed Afifi
4d6d51460e Updated Arabic Translation by Khaled Hosny.
* Updated Arabic Translation by Khaled Hosny. 

svn path=/trunk/; revision=7482
2008-09-14 10:14:32 +00:00
Cosimo Cecchi
6e3f927901 Bug 551887 – Docs for g_desktop_app_info_new_from_filename () aren't
2008-09-14  Cosimo Cecchi  <cosimoc@gnome.org>

	Bug 551887 – Docs for g_desktop_app_info_new_from_filename ()
	aren't clear.

	* gdesktopappinfo.c: add a note in the docs clarifying what the
	"filename" parameter really is.

svn path=/trunk/; revision=7481
2008-09-13 23:47:41 +00:00
Tor Lillqvist
e55fca9533 glib/gutils.h Deprecate G_WIN32_DLLMAIN_FOR_DLL_NAME(),
2008-09-13  Tor Lillqvist  <tml@novell.com>

	* glib/gutils.h
	* glib/gwin32.h: Deprecate G_WIN32_DLLMAIN_FOR_DLL_NAME(),
	g_win32_get_package_installation_directory() and
	g_win32_get_package_installation_subdirectory() as their
	documentation has warned for a while. Sorry that I forgot to do
	this before 2.18.0.

	* glib/gwin32.c (g_win32_get_package_installation_directory):
	Print a warning if a non-NULL package parameter is passed to this
	function, as that is deprecated usage, as the documentation says.


svn path=/trunk/; revision=7480
2008-09-13 20:23:17 +00:00
Baris Cicek
005ce779e3 Updated Turkish Translation
svn path=/trunk/; revision=7479
2008-09-13 02:35:29 +00:00
Matthias Clasen
876aaf7174 Reinstate docs that got lost
svn path=/trunk/; revision=7478
2008-09-12 22:59:03 +00:00
Tor Lillqvist
654822b9be Don't call FormatMessage() etc here. Call g_win32_error_message() instead
2008-09-12  Tor Lillqvist  <tml@novell.com>

	* gwin32appinfo.c (g_win32_app_info_launch): Don't call
	FormatMessage() etc here. Call g_win32_error_message() instead
	which already does all that. Besides, the code was broken as it
	called the default "A" version of FormatMessage() but still
	thought it produced a wide string.


svn path=/trunk/; revision=7472
2008-09-12 00:54:14 +00:00
Michael Natterer
b6d834a588 remove dangling 's' in the documentation.
2008-09-12  Michael Natterer  <mitch@imendio.com>

	* gfileinfo.c (g_file_info_get_content_type): remove dangling 's'
	in the documentation.


svn path=/trunk/; revision=7471
2008-09-11 22:05:09 +00:00
Matthias Clasen
dc85674b57 Bug 548321 – <string.h> is not included in gi18n-lib.h
2008-09-11  Matthias Clasen  <mclasen@redhat.com>

        Bug 548321 – <string.h> is not included in gi18n-lib.h

        * glib/gi18n.h:
        * glib/gi18n-lib.h: Include string.h, since strlen is used in
        the macros. Pointed out by Ignacio Casal Quinteiro


svn path=/trunk/; revision=7455
2008-09-11 16:48:44 +00:00
Rajesh Ranjan
a4942dd6fe hindi update by Rajesh Ranjan
svn path=/trunk/; revision=7454
2008-09-11 11:14:58 +00:00
Matthias Clasen
6848d2578d Documentation improvements
svn path=/trunk/; revision=7453
2008-09-11 04:21:17 +00:00
Matthias Clasen
8f85da0b5e Add required includes
svn path=/trunk/; revision=7452
2008-09-10 22:39:05 +00:00
Matthias Clasen
0b890c6298 Bug 551228 – G_STRFUNC on recent Sun compiler should be expanded to
2008-09-09  Matthias Clasen  <mclasen@redhat.com>

        Bug 551228 – G_STRFUNC on recent Sun compiler should be expanded to
        __func__ rather than '???'

        * glib/gmacros.h: Don't use glibconfig.h defines in gmacros.h,
        as the comment up top says. Instead look at __STDC_VERSION__.
        Problem reported by Lin Ma.


svn path=/trunk/; revision=7451
2008-09-10 03:21:42 +00:00
Manoj Kumar Giri
8f1f4df90e Updated Oriya (or.po) Translation
svn path=/trunk/; revision=7450
2008-09-09 13:56:21 +00:00
Runa Bhattacharjee
97d2a984bb Added Entry for Bengali India Translation Updation
svn path=/trunk/; revision=7449
2008-09-09 12:55:14 +00:00
Runa Bhattacharjee
140cf88442 Updated Bengali India Translation
svn path=/trunk/; revision=7448
2008-09-09 12:55:02 +00:00
Matthias Clasen
b36ea0b1c7 Bug 523463 – Core dump in gmain.c:2482:IA__g_main_context_check()
2008-09-09  Matthias Clasen  <mclasen@redhat.com>

        Bug 523463 – Core dump in gmain.c:2482:IA__g_main_context_check()

        * glib/gmain.c (g_main_context_check): Be robust against setting
        event fields on the fly, as e.g. happens in linc. Tracked down
        by Paul Smith, fix proposed by Owen Taylor.

svn path=/trunk/; revision=7447
2008-09-09 06:04:21 +00:00
Tor Lillqvist
a8539d10d4 Bug 551408 - gmodule.def generated to builddir, but required in srcdir
2008-09-08  Tor Lillqvist  <tml@novell.com>

	Bug 551408 - gmodule.def generated to builddir, but required in srcdir

	* Makefile.am: Use gmodule.def from builddir, not srcdir.


svn path=/trunk/; revision=7446
2008-09-08 20:38:40 +00:00
Matej Urbančič
cc29f229ed Updated Slovenian translation
svn path=/trunk/; revision=7445
2008-09-08 14:16:23 +00:00
Christian Neumair
b9c69790a8 (gio)
2008-09-08  Christian Neumair  <cneumair@gnome.org>

	* gunixmount.c (eject_unmount_read_error), (eject_unmount_do):
	* gunixvolume.c (eject_mount_read_error), (eject_mount_do):
	Use non-blocking pipe for mount helper I/O. Fixes #550647.

svn path=/trunk/; revision=7444
2008-09-08 12:44:07 +00:00
Robert Sedak
7b54bccc74 Update: Croatian Language
svn path=/trunk/; revision=7443
2008-09-08 09:19:19 +00:00