|
@@ -268,23 +268,35 @@ int main(int argc, char *argv[])
|
|
|
proj_crs_info = proj_get_crs_info_list_from_database(NULL, listcodes->answer, NULL, &crs_cnt);
|
|
|
if (crs_cnt < 1)
|
|
|
G_fatal_error(_("No codes found for authority %s"),
|
|
|
- listcodes->answer;
|
|
|
+ listcodes->answer);
|
|
|
|
|
|
for (i = 0; i < crs_cnt; i++) {
|
|
|
- char *proj_definition;
|
|
|
+ const char *proj_definition;
|
|
|
PJ *pj;
|
|
|
|
|
|
-
|
|
|
pj = proj_create_from_database(NULL,
|
|
|
proj_crs_info[i]->auth_name,
|
|
|
proj_crs_info[i]->code,
|
|
|
PJ_CATEGORY_CRS,
|
|
|
0, NULL);
|
|
|
proj_definition = proj_as_proj_string(NULL, pj, PJ_PROJ_5, NULL);
|
|
|
-
|
|
|
- fprintf(stdout, "%s|%s|%s\n", proj_crs_info[i]->code,
|
|
|
- proj_crs_info[i]->name,
|
|
|
- proj_definition);
|
|
|
+ if (!proj_definition) {
|
|
|
+ int err = proj_errno(pj);
|
|
|
+
|
|
|
+ if (err) {
|
|
|
+ G_warning(_("Unable to fetch proj string: %s"),
|
|
|
+ proj_errno_string(err));
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ G_warning(_("Unable to fetch proj string: unknown error"));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ fprintf(stdout, "%s|%s|%s\n", proj_crs_info[i]->code,
|
|
|
+ proj_crs_info[i]->name,
|
|
|
+ proj_definition);
|
|
|
+ }
|
|
|
+ proj_destroy(pj);
|
|
|
}
|
|
|
#else
|
|
|
char pathname[GPATH_MAX];
|