Skip to content

Commit befbc72

Browse files
authored
Merge pull request #2 from pfmonville/pfmonville-patch-3.1
3.1 fix a bug causing segmentation fault on some linux computers
2 parents a4b9d6e + 9c2e951 commit befbc72

File tree

2 files changed

+3441
-4150
lines changed

2 files changed

+3441
-4150
lines changed

main.c

+4-8
Original file line numberDiff line numberDiff line change
@@ -693,8 +693,7 @@ static inline void loadBar(int currentIteration, int maximalIteration, int numbe
693693
*/
694694
void code (FILE* mainFile)
695695
{
696-
int mainFileSize = strlen(fileName);
697-
char codedFileName[mainFileSize+1];
696+
char codedFileName[strlen(pathToMainFile) + strlen(fileName) + 1];
698697
char extractedString[BUFFER_SIZE] = "";
699698
char keyString[BUFFER_SIZE] = "";
700699
char xoredString[BUFFER_SIZE] = "";
@@ -750,8 +749,7 @@ void code (FILE* mainFile)
750749
*/
751750
void decode(FILE* mainFile)
752751
{
753-
int mainFileSize = strlen(fileName);
754-
char decodedFileName[mainFileSize+1];
752+
char decodedFileName[strlen(pathToMainFile) + strlen(fileName) + 1];
755753
char extractedString[BUFFER_SIZE] = "";
756754
char keyString[BUFFER_SIZE] = "";
757755
char xoredString[BUFFER_SIZE] = "";
@@ -761,12 +759,10 @@ void decode(FILE* mainFile)
761759
unscramble();
762760

763761
// naming the file which will be decrypted
764-
sprintf(decodedFileName, "x%s", fileName);
765-
762+
sprintf(decodedFileName, "%sx%s", pathToMainFile, fileName);
766763

767764
// opening the output file
768-
strcat(pathToMainFile, decodedFileName);
769-
if ((decodedFile = fopen(pathToMainFile, "w+")) == NULL) {
765+
if ((decodedFile = fopen(decodedFileName, "w+")) == NULL) {
770766
perror(decodedFileName);
771767
printf("exiting...\n");
772768
exit(EXIT_FAILURE);

0 commit comments

Comments
 (0)