/[zanavi_public1]/navit/navit/map/binfile/binfile.c
ZANavi

Diff of /navit/navit/map/binfile/binfile.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 40 Revision 41
3039 if (version_exception == 0) 3039 if (version_exception == 0)
3040 { 3040 {
3041 if (m->map_version < (int)NEED_MIN_BINFILE_MAPVERSION) 3041 if (m->map_version < (int)NEED_MIN_BINFILE_MAPVERSION)
3042 { 3042 {
3043 dbg(0, "!!**Warning**!!: This map is too old for your version of ZANavi. You need at least a version %d map\n", (int)NEED_MIN_BINFILE_MAPVERSION); 3043 dbg(0, "!!**Warning**!!: This map is too old for your version of ZANavi. You need at least a version %d map\n", (int)NEED_MIN_BINFILE_MAPVERSION);
3044
3045#ifdef HAVE_API_ANDROID
3046 gchar* xy=g_strdup_printf("%d:%d:%s\n", (int)m->map_version, (int)NEED_MIN_BINFILE_MAPVERSION, m->filename);
3047 android_send_generic_text(31,xy);
3048 g_free(xy);
3049#endif
3044 return 0; 3050 return 0;
3045 } 3051 }
3046 } 3052 }
3047 } 3053 }
3048 return 1; 3054 return 1;
3079} 3085}
3080 3086
3081static void binfile_check_version(struct map_priv *m) 3087static void binfile_check_version(struct map_priv *m)
3082{ 3088{
3083 int version = -1; 3089 int version = -1;
3090
3084 if (!m->check_version) 3091 if (!m->check_version)
3092 {
3085 return; 3093 return;
3094 }
3095
3086 if (m->fi) 3096 if (m->fi)
3097 {
3087 version = file_version(m->fi, m->check_version); 3098 version = file_version(m->fi, m->check_version);
3099 }
3100
3088 if (version != m->version) 3101 if (version != m->version)
3089 { 3102 {
3090 if (m->fi) 3103 if (m->fi)
3104 {
3091 map_binfile_close(m); 3105 map_binfile_close(m);
3106 }
3092 map_binfile_open(m); 3107 map_binfile_open(m);
3093 } 3108 }
3094} 3109}
3095 3110
3096struct map_priv * 3111struct map_priv *
3099 struct map_priv *m; 3114 struct map_priv *m;
3100 struct attr *data = attr_search(attrs, NULL, attr_data); 3115 struct attr *data = attr_search(attrs, NULL, attr_data);
3101 struct attr *check_version, *map_pass, *flags, *url, *download_enabled; 3116 struct attr *check_version, *map_pass, *flags, *url, *download_enabled;
3102 struct file_wordexp *wexp; 3117 struct file_wordexp *wexp;
3103 char **wexp_data; 3118 char **wexp_data;
3119
3104 if (!data) 3120 if (!data)
3121 {
3105 return NULL; 3122 return NULL;
3123 }
3106 3124
3107 // wexp = file_wordexp_new(data->u.str); 3125 // wexp = file_wordexp_new(data->u.str);
3108 // wexp_data = file_wordexp_get_array(wexp); 3126 // wexp_data = file_wordexp_get_array(wexp);
3109 // dbg(0, "map_new_binfile %s\n", data->u.str); 3127 // dbg(0, "map_new_binfile %s\n", data->u.str);
3110 *meth = map_methods_binfile; 3128 *meth = map_methods_binfile;
3115 m->filename = g_strdup(data->u.str); 3133 m->filename = g_strdup(data->u.str);
3116 // file_wordexp_destroy(wexp); 3134 // file_wordexp_destroy(wexp);
3117 check_version = attr_search(attrs, NULL, attr_check_version); 3135 check_version = attr_search(attrs, NULL, attr_check_version);
3118 3136
3119 if (check_version) 3137 if (check_version)
3138 {
3120 m->check_version = check_version->u.num; 3139 m->check_version = check_version->u.num;
3140 }
3121 3141
3122 map_pass = attr_search(attrs, NULL, attr_map_pass); 3142 map_pass = attr_search(attrs, NULL, attr_map_pass);
3123 3143
3124 if (map_pass) 3144 if (map_pass)
3145 {
3125 m->passwd = g_strdup(map_pass->u.str); 3146 m->passwd = g_strdup(map_pass->u.str);
3147 }
3126 3148
3127 flags = attr_search(attrs, NULL, attr_flags); 3149 flags = attr_search(attrs, NULL, attr_flags);
3128 3150
3129 if (flags) 3151 if (flags)
3152 {
3130 m->flags = flags->u.num; 3153 m->flags = flags->u.num;
3154 }
3131 3155
3132 url = attr_search(attrs, NULL, attr_url); 3156 url = attr_search(attrs, NULL, attr_url);
3133 3157
3134 if (url) 3158 if (url)
3159 {
3135 m->url = g_strdup(url->u.str); 3160 m->url = g_strdup(url->u.str);
3161 }
3136 3162
3137 download_enabled = attr_search(attrs, NULL, attr_update); 3163 download_enabled = attr_search(attrs, NULL, attr_update);
3138 3164
3139 if (download_enabled) 3165 if (download_enabled)
3166 {
3140 m->download_enabled = download_enabled->u.num; 3167 m->download_enabled = download_enabled->u.num;
3168 }
3141 3169
3142 if (!map_binfile_open(m) && !m->check_version && !m->url) 3170 if (!map_binfile_open(m) && !m->check_version && !m->url)
3143 { 3171 {
3144 map_binfile_destroy(m); 3172 map_binfile_destroy(m);
3145 m = NULL; 3173 m = NULL;

Legend:
Removed from v.40  
changed lines
  Added in v.41

   
Visit the ZANavi Wiki