Solved problems with codec reading from image file directory when filename had more...
authorFrancois-Olivier Devaux <fodevaux@users.noreply.github.com>
Tue, 21 Aug 2007 10:50:47 +0000 (10:50 +0000)
committerFrancois-Olivier Devaux <fodevaux@users.noreply.github.com>
Tue, 21 Aug 2007 10:50:47 +0000 (10:50 +0000)
ChangeLog
codec/image_to_j2k.c
codec/j2k_to_image.c

index e97d405680c659b6f3623aabdbb908a6ff7965cd..17fbfc921ea52bcfa81cb33fb9e3c95cc3d73f98 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -8,6 +8,7 @@ What's New for OpenJPEG
 August 21, 2007
 + [FOD] Added support for Visual Studio 2005
 * [FOD] Robustified MJ2 codecs
+* [Parvatha] Solved problems with codec reading from image file directory when filename had more than one "." in name
 
 August 20, 2007
 + [FOD] Added support for the TGA file format in the codec
index 75a763f86fbf43c4851d2e51ef9afbe73a2647a0..0f5541ce00c269460ccb2e8cda26e26da2046f28 100644 (file)
@@ -397,6 +397,7 @@ char * get_file_name(char *name){
 
 char get_next_file(int imageno,dircnt_t *dirptr,img_fol_t *img_fol, opj_cparameters_t *parameters){
        char image_filename[OPJ_PATH_LEN], infilename[OPJ_PATH_LEN],outfilename[OPJ_PATH_LEN],temp_ofname[OPJ_PATH_LEN];
+  char *temp_p, temp1[OPJ_PATH_LEN]="";
 
        strcpy(image_filename,dirptr->filename[imageno]);
        fprintf(stderr,"File Number %d \"%s\"\n",imageno,image_filename);
@@ -408,6 +409,10 @@ char get_next_file(int imageno,dircnt_t *dirptr,img_fol_t *img_fol, opj_cparamet
 
        //Set output file
        strcpy(temp_ofname,get_file_name(image_filename));
+       while((temp_p = strtok(NULL,".")) != NULL){
+               strcat(temp_ofname,temp1);
+               sprintf(temp1,".%s",temp_p);
+       }
        if(img_fol->set_out_format==1){
                sprintf(outfilename,"%s/%s.%s",img_fol->imgdirpath,temp_ofname,img_fol->out_format);
                strncpy(parameters->outfile, outfilename, sizeof(outfilename));
@@ -1718,3 +1723,4 @@ int main(int argc, char **argv) {
        return 0;
 }
 
+
index e19920c1c5f9ddd479514110fd674cf4b0395144..f05845549d5dad9d657382cbc1041956c0ae5589 100644 (file)
@@ -202,6 +202,7 @@ int get_file_format(char *filename) {
 
 char get_next_file(int imageno,dircnt_t *dirptr,img_fol_t *img_fol, opj_dparameters_t *parameters){
        char image_filename[OPJ_PATH_LEN], infilename[OPJ_PATH_LEN],outfilename[OPJ_PATH_LEN],temp_ofname[OPJ_PATH_LEN];
+       char *temp_p, temp1[OPJ_PATH_LEN]="";
 
        strcpy(image_filename,dirptr->filename[imageno]);
        fprintf(stderr,"File Number %d \"%s\"\n",imageno,image_filename);
@@ -213,6 +214,10 @@ char get_next_file(int imageno,dircnt_t *dirptr,img_fol_t *img_fol, opj_dparamet
 
        //Set output file
        strcpy(temp_ofname,strtok(image_filename,"."));
+       while((temp_p = strtok(NULL,".")) != NULL){
+               strcat(temp_ofname,temp1);
+               sprintf(temp1,".%s",temp_p);
+       }
        if(img_fol->set_out_format==1){
                sprintf(outfilename,"%s/%s.%s",img_fol->imgdirpath,temp_ofname,img_fol->out_format);
                strncpy(parameters->outfile, outfilename, sizeof(outfilename));
@@ -750,3 +755,4 @@ int main(int argc, char **argv) {
 }
 //end main
 
+