From: Jan P. <pa...@us...> - 2004-08-31 13:33:40
|
Update of /cvsroot/libexif/exif/exif In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27809 Modified Files: actions.c actions.h main.c Log Message: 2004-08-31 Jan Patera <pa...@us...> * exif/main.c,actions.*: action_mnote_list can print mnote tag ID instead of its name. Code submitted by Serge Droz <ser...@ps...>. Index: main.c =================================================================== RCS file: /cvsroot/libexif/exif/exif/main.c,v retrieving revision 1.39 retrieving revision 1.40 diff -u -d -r1.39 -r1.40 --- main.c 20 May 2004 10:51:58 -0000 1.39 +++ main.c 31 Aug 2004 13:33:29 -0000 1.40 @@ -569,7 +569,7 @@ } else if (machine_readable) { action_tag_list_machine (*args, ed, eo.use_ids); } else if (list_mnote) { - action_mnote_list (*args, ed); + action_mnote_list (*args, ed, eo.use_ids); } else action_tag_list (*args, ed, eo.use_ids); exif_data_unref (ed); Index: actions.c =================================================================== RCS file: /cvsroot/libexif/exif/exif/actions.c,v retrieving revision 1.19 retrieving revision 1.20 diff -u -d -r1.19 -r1.20 --- actions.c 22 Jun 2004 18:01:19 -0000 1.19 +++ actions.c 31 Aug 2004 13:33:29 -0000 1.20 @@ -98,9 +98,9 @@ } void -action_mnote_list (const char *filename, ExifData *ed) +action_mnote_list (const char *filename, ExifData *ed, unsigned char ids) { - unsigned int i, bs = 1024, c; + unsigned int i, bs = 1024, c, id; char b[1024]; char b1[1024], b2[1024]; ExifMnoteData *n; @@ -124,11 +124,26 @@ printf (_("MakerNote contains %i values:\n"), c); } for (i = 0; i < c; i++) { - p = C (exif_mnote_data_get_title (n, i)); - strncpy (b1, p ? p : _("Unknown tag"), bs); + if ( ids ) { + id = exif_mnote_data_get_id (n,i); + sprintf(b1,"0x%04x",id); + } else { + p = C (exif_mnote_data_get_title (n, i)); + strncpy (b1, p ? p : _("Unknown tag"), bs); + } p = C (exif_mnote_data_get_value (n, i, b, bs)); strncpy (b2, p ? p : _("Unknown value"), bs); - printf ("%s: %s\n", b1, b2); + /* printf ("%s|%s\n", b1, b2); */ + if (ids) + fprintf (stdout, "%-6.6s", b1); + else + fprintf (stdout, "%-20.20s", b1); + fputc ('|', stdout); + if (ids) + fprintf (stdout, "%s", b2); + else + fprintf (stdout, "%-58.58s", b2); + fputc ('\n', stdout); } } Index: actions.h =================================================================== RCS file: /cvsroot/libexif/exif/exif/actions.h,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- actions.h 20 May 2004 10:51:58 -0000 1.6 +++ actions.h 31 Aug 2004 13:33:29 -0000 1.7 @@ -33,6 +33,7 @@ void action_tag_list_machine (const char *filename, ExifData *, unsigned char ids); -void action_mnote_list (const char *filename, ExifData *); +void action_mnote_list (const char *filename, ExifData *, + unsigned char ids); #endif /* __ACTIONS_H__ */ |