From ed83fc816c19eeaeb87828ec260298240866f59c Mon Sep 17 00:00:00 2001 From: Marcus Meissner Date: Wed, 17 Feb 2010 23:01:56 +0000 Subject: [PATCH] more shutterspeed specification parsing git-svn-id: https://svn.code.sf.net/p/gphoto/code/trunk/libgphoto2@12710 67ed7778-7388-44ab-90cf-0a291f65f57c --- camlibs/ptp2/config.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/camlibs/ptp2/config.c b/camlibs/ptp2/config.c index d1f0acb69..6a5dded93 100644 --- a/camlibs/ptp2/config.c +++ b/camlibs/ptp2/config.c @@ -2085,8 +2085,17 @@ _put_ExpTime(CONFIG_PUT_ARGS) if (ret != GP_OK) return ret; - if (!sscanf(value,_("%fs"),&val)) - return (GP_ERROR); + if (!sscanf(value,_("%fs"),&val)) { + int ival1, ival2, ival3; + + if (sscanf(value,_("%d/%d"),&ival1,&ival2) == 2) { + val = (float)ival1/(float)ival2; + } else if (sscanf(value,_("%d %d/%d"),&ival1,&ival2,&ival3) == 3) { + val = ((float)ival1) + ((float)ival2/(float)ival3); + } else if (!sscanf(value,"%f",&val)) { + return (GP_ERROR); + } + } val = val*10000.0; delta = 1000000; xval = val;