File tree Expand file tree Collapse file tree 1 file changed +10
-5
lines changed Expand file tree Collapse file tree 1 file changed +10
-5
lines changed Original file line number Diff line number Diff line change @@ -694,14 +694,14 @@ int main(int argc, char **argv)
694
694
if (*filename == ' \0 ' )
695
695
{
696
696
fprintf (stderr, " Error; File name missing\n " );
697
- goto error ;
697
+ goto error_out ;
698
698
}
699
699
700
700
/* stat the file to get size and page count */
701
701
if (stat (filename, &st))
702
702
{
703
703
fprintf (stderr, " Error; %s cannot be found\n " , filename);
704
- goto error ;
704
+ goto error_out ;
705
705
}
706
706
size= st.st_size ;
707
707
@@ -711,15 +711,15 @@ int main(int argc, char **argv)
711
711
{
712
712
fprintf (stderr, " Error; %s cannot be opened" , filename);
713
713
perror (" " );
714
- goto error ;
714
+ goto error_out ;
715
715
}
716
716
717
717
big_buf = (unsigned char *)malloc (2 * UNIV_PAGE_SIZE_MAX);
718
718
if (big_buf == NULL )
719
719
{
720
720
fprintf (stderr, " Error; failed to allocate memory\n " );
721
721
perror (" " );
722
- goto error ;
722
+ goto error_f ;
723
723
}
724
724
725
725
/* Make sure the page is aligned */
@@ -731,7 +731,7 @@ int main(int argc, char **argv)
731
731
{
732
732
fprintf (stderr, " Error; failed to allocate memory\n " );
733
733
perror (" " );
734
- return 1 ;
734
+ goto error_big_buf ;
735
735
}
736
736
737
737
/* Make sure the page is aligned */
@@ -983,12 +983,17 @@ int main(int argc, char **argv)
983
983
print_stats ();
984
984
free (big_xdes);
985
985
free (big_buf);
986
+ fclose (f);
986
987
my_end (0 );
987
988
exit (0 );
988
989
989
990
error:
990
991
free (big_xdes);
992
+ error_big_buf:
991
993
free (big_buf);
994
+ error_f:
995
+ fclose (f);
996
+ error_out:
992
997
my_end (0 );
993
998
exit (1 );
994
999
}
You can’t perform that action at this time.
0 commit comments