@@ -693,8 +693,7 @@ static inline void loadBar(int currentIteration, int maximalIteration, int numbe
693
693
*/
694
694
void code (FILE * mainFile )
695
695
{
696
- int mainFileSize = strlen (fileName );
697
- char codedFileName [mainFileSize + 1 ];
696
+ char codedFileName [strlen (pathToMainFile ) + strlen (fileName ) + 1 ];
698
697
char extractedString [BUFFER_SIZE ] = "" ;
699
698
char keyString [BUFFER_SIZE ] = "" ;
700
699
char xoredString [BUFFER_SIZE ] = "" ;
@@ -750,8 +749,7 @@ void code (FILE* mainFile)
750
749
*/
751
750
void decode (FILE * mainFile )
752
751
{
753
- int mainFileSize = strlen (fileName );
754
- char decodedFileName [mainFileSize + 1 ];
752
+ char decodedFileName [strlen (pathToMainFile ) + strlen (fileName ) + 1 ];
755
753
char extractedString [BUFFER_SIZE ] = "" ;
756
754
char keyString [BUFFER_SIZE ] = "" ;
757
755
char xoredString [BUFFER_SIZE ] = "" ;
@@ -761,12 +759,10 @@ void decode(FILE* mainFile)
761
759
unscramble ();
762
760
763
761
// naming the file which will be decrypted
764
- sprintf (decodedFileName , "x%s" , fileName );
765
-
762
+ sprintf (decodedFileName , "%sx%s" , pathToMainFile , fileName );
766
763
767
764
// opening the output file
768
- strcat (pathToMainFile , decodedFileName );
769
- if ((decodedFile = fopen (pathToMainFile , "w+" )) == NULL ) {
765
+ if ((decodedFile = fopen (decodedFileName , "w+" )) == NULL ) {
770
766
perror (decodedFileName );
771
767
printf ("exiting...\n" );
772
768
exit (EXIT_FAILURE );
0 commit comments