From: <mar...@us...> - 2010-11-24 17:54:05
|
Revision: 3720 http://navit.svn.sourceforge.net/navit/?rev=3720&view=rev Author: martin-s Date: 2010-11-24 17:53:58 +0000 (Wed, 24 Nov 2010) Log Message: ----------- Add:map_binfile:Optionally mmap uncompressed binfile Modified Paths: -------------- trunk/navit/navit/map/binfile/binfile.c Modified: trunk/navit/navit/map/binfile/binfile.c =================================================================== --- trunk/navit/navit/map/binfile/binfile.c 2010-11-24 17:14:36 UTC (rev 3719) +++ trunk/navit/navit/map/binfile/binfile.c 2010-11-24 17:53:58 UTC (rev 3720) @@ -72,6 +72,7 @@ GHashTable *changes; char *passwd; char *map_release; + int flags; }; struct map_rect_priv { @@ -1647,6 +1648,8 @@ m->fi=NULL; return 0; } + if (m->flags & 1) + file_mmap(m->fi); } else file_mmap(m->fi); file_data_free(m->fi, (unsigned char *)magic); @@ -1710,7 +1713,7 @@ { struct map_priv *m; struct attr *data=attr_search(attrs, NULL, attr_data); - struct attr *check_version,*map_pass; + struct attr *check_version,*map_pass,*flags; struct file_wordexp *wexp; char **wexp_data; if (! data) @@ -1731,6 +1734,9 @@ map_pass=attr_search(attrs, NULL, attr_map_pass); if (map_pass) m->passwd=g_strdup(map_pass->u.str); + flags=attr_search(attrs, NULL, attr_flags); + if (flags) + m->flags=flags->u.num; if (!map_binfile_open(m) && !m->check_version) { map_binfile_destroy(m); m=NULL; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |