summaryrefslogtreecommitdiff
path: root/extra
diff options
context:
space:
mode:
Diffstat (limited to 'extra')
-rw-r--r--extra/Makefile.am2
-rw-r--r--extra/innochecksum.c12
2 files changed, 9 insertions, 5 deletions
diff --git a/extra/Makefile.am b/extra/Makefile.am
index 9fac05d0160..457fddce673 100644
--- a/extra/Makefile.am
+++ b/extra/Makefile.am
@@ -38,7 +38,7 @@ $(top_builddir)/include/mysqld_ername.h: $(top_builddir)/include/mysqld_error.h
$(top_builddir)/include/sql_state.h: $(top_builddir)/include/mysqld_error.h
bin_PROGRAMS = replace comp_err perror resolveip my_print_defaults \
- resolve_stack_dump mysql_waitpid # innochecksum
+ resolve_stack_dump mysql_waitpid innochecksum
noinst_PROGRAMS = charset2html
# Don't update the files from bitkeeper
diff --git a/extra/innochecksum.c b/extra/innochecksum.c
index bce4214847d..bbeb96224c9 100644
--- a/extra/innochecksum.c
+++ b/extra/innochecksum.c
@@ -140,10 +140,11 @@ int main(int argc, char **argv) {
int now; // current time
int lastt; // last time
ulint oldcsum, oldcsumfield, csum, csumfield, logseq, logseqfield; // ulints for checksum storage
- struct stat64 st; // for stat, if you couldn't guess
+ struct stat st; // for stat, if you couldn't guess
unsigned long long int size; // size of file (has to be 64 bits)
ulint pages; // number of pages in file
ulint start_page = 0, end_page = 0, use_end_page = 0; // for starting and ending at certain pages
+ off_t offset = 0;
int just_count = 0; // if true, just print page count
int verbose = 0;
int debug = 0;
@@ -202,7 +203,7 @@ int main(int argc, char **argv) {
}
// stat the file to get size and page count
- if (stat64(argv[optind], &st)) {
+ if (stat(argv[optind], &st)) {
perror("error statting file");
return 1;
}
@@ -217,7 +218,7 @@ int main(int argc, char **argv) {
}
// open the file for reading
- f = fopen64(argv[optind], "r");
+ f = fopen(argv[optind], "r");
if (!f) {
perror("error opening file");
return 1;
@@ -230,7 +231,10 @@ int main(int argc, char **argv) {
perror("unable to obtain file descriptor number");
return 1;
}
- if (lseek64(fd, start_page * UNIV_PAGE_SIZE, SEEK_SET) != (start_page * UNIV_PAGE_SIZE)) {
+
+ offset = (off_t)start_page * (off_t)UNIV_PAGE_SIZE;
+
+ if (lseek(fd, offset, SEEK_SET) != offset) {
perror("unable to seek to necessary offset");
return 1;
}