diff --git a/exfat/dump/main.c b/exfat/dump/main.c
index 5d70fde..7ef571d 100644
--- a/exfat/dump/main.c
+++ b/exfat/dump/main.c
@@ -3,7 +3,7 @@
 	Prints detailed information about exFAT volume.
 
 	Free exFAT implementation.
-	Copyright (C) 2011-2014  Andrew Nayenko
+	Copyright (C) 2011-2013  Andrew Nayenko
 
 	This program is free software; you can redistribute it and/or modify
 	it under the terms of the GNU General Public License as published by
@@ -85,13 +85,13 @@
 	if (exfat_read(dev, &sb, sizeof(struct exfat_super_block)) < 0)
 	{
 		exfat_close(dev);
-		exfat_error("failed to read from '%s'", spec);
+		exfat_error("failed to read from `%s'", spec);
 		return 1;
 	}
 	if (memcmp(sb.oem_name, "EXFAT   ", sizeof(sb.oem_name)) != 0)
 	{
 		exfat_close(dev);
-		exfat_error("exFAT file system is not found on '%s'", spec);
+		exfat_error("exFAT file system is not found on `%s'", spec);
 		return 1;
 	}
 
@@ -106,7 +106,7 @@
 
 static void dump_sectors(struct exfat* ef)
 {
-	off64_t a = 0, b = 0;
+	off_t a = 0, b = 0;
 
 	printf("Used sectors ");
 	while (exfat_find_used_sectors(ef, &a, &b) == 0)
@@ -167,7 +167,7 @@
 			used_sectors = true;
 			break;
 		case 'V':
-			puts("Copyright (C) 2011-2014  Andrew Nayenko");
+			puts("Copyright (C) 2011-2013  Andrew Nayenko");
 			return 0;
 		default:
 			usage(argv[0]);
