author | Michael Krelin <hacker@klever.net> | 2011-09-10 16:48:28 (UTC) |
---|---|---|
committer | Michael Krelin <hacker@klever.net> | 2011-09-10 16:48:28 (UTC) |
commit | 7f16ae237b9f881a98719ea493ac75043336f17f (patch) (unidiff) | |
tree | 7ccf3a0c764dbab4c778c7fc20a7a11b7e8ca26c | |
parent | 49b219a1b19f8d4ecf0fa4166f72e56bb5a84263 (diff) | |
download | iii-7f16ae237b9f881a98719ea493ac75043336f17f.zip iii-7f16ae237b9f881a98719ea493ac75043336f17f.tar.gz iii-7f16ae237b9f881a98719ea493ac75043336f17f.tar.bz2 |
Add RW2 extension to the list
Signed-off-by: Michael Krelin <hacker@klever.net>
-rw-r--r-- | src/eyefiservice.cc | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/eyefiservice.cc b/src/eyefiservice.cc index 5167cf4..9350386 100644 --- a/src/eyefiservice.cc +++ b/src/eyefiservice.cc | |||
@@ -160,25 +160,25 @@ int eyefiService::UploadPhoto( | |||
160 | if(!digest.empty()) throw std::runtime_error("already have integrity digest"); | 160 | if(!digest.empty()) throw std::runtime_error("already have integrity digest"); |
161 | digest = integrity_digest((*i).ptr,(*i).size,eyekinfig.get_upload_key()); | 161 | digest = integrity_digest((*i).ptr,(*i).size,eyekinfig.get_upload_key()); |
162 | #ifndef NDEBUG | 162 | #ifndef NDEBUG |
163 | syslog(LOG_DEBUG," computed integrity digest=%s", digest.hex().c_str()); | 163 | syslog(LOG_DEBUG," computed integrity digest=%s", digest.hex().c_str()); |
164 | #endif | 164 | #endif |
165 | 165 | ||
166 | tarchive_t a((*i).ptr,(*i).size); | 166 | tarchive_t a((*i).ptr,(*i).size); |
167 | while(a.read_next_header()) { | 167 | while(a.read_next_header()) { |
168 | std::string f = indir.get_file(a.entry_pathname()); | 168 | std::string f = indir.get_file(a.entry_pathname()); |
169 | std::string::size_type fl = f.length(); | 169 | std::string::size_type fl = f.length(); |
170 | if(fl<4) continue; | 170 | if(fl<4) continue; |
171 | const char *s = f.c_str()+fl-4; | 171 | const char *s = f.c_str()+fl-4; |
172 | static const char *suffixes[] = { ".JPG",".AVI",".MP4",".NEF",".RAW",".TIF",".DNG",".CRW" }; | 172 | static const char *suffixes[] = { ".JPG",".AVI",".MP4",".NEF",".RAW",".TIF",".DNG",".CRW", ".RW2" }; |
173 | if(std::find_if(suffixes,suffixes+sizeof(suffixes)/sizeof(*suffixes), | 173 | if(std::find_if(suffixes,suffixes+sizeof(suffixes)/sizeof(*suffixes), |
174 | std::not1(std::bind1st(std::ptr_fun(strcasecmp),s))) | 174 | std::not1(std::bind1st(std::ptr_fun(strcasecmp),s))) |
175 | != suffixes+sizeof(suffixes)/sizeof(*suffixes)) | 175 | != suffixes+sizeof(suffixes)/sizeof(*suffixes)) |
176 | tf = f; | 176 | tf = f; |
177 | else if(!strcasecmp(s,".log")) | 177 | else if(!strcasecmp(s,".log")) |
178 | lf = f; | 178 | lf = f; |
179 | else continue; | 179 | else continue; |
180 | int fd=open(f.c_str(),O_CREAT|O_WRONLY,0666); | 180 | int fd=open(f.c_str(),O_CREAT|O_WRONLY,0666); |
181 | if(fd<0) | 181 | if(fd<0) |
182 | throw std::runtime_error(gnu::autosprintf("failed to create output file '%s'",f.c_str())); | 182 | throw std::runtime_error(gnu::autosprintf("failed to create output file '%s'",f.c_str())); |
183 | if(!a.read_data_into_fd(fd)) | 183 | if(!a.read_data_into_fd(fd)) |
184 | throw std::runtime_error(gnu::autosprintf("failed to untar file into '%s'",f.c_str())); | 184 | throw std::runtime_error(gnu::autosprintf("failed to untar file into '%s'",f.c_str())); |