diff --git a/applypatch/applypatch.c b/applypatch/applypatch.c
index 09ca2ad..00004e9 100644
--- a/applypatch/applypatch.c
+++ b/applypatch/applypatch.c
@@ -472,7 +472,7 @@
 // Search an array of sha1 strings for one matching the given sha1.
 // Return the index of the match on success, or -1 if no match is
 // found.
-int FindMatchingPatch(uint8_t* sha1, char** const patch_sha1_str,
+int FindMatchingPatch(uint8_t* sha1, const char** patch_sha1_str,
                       int num_patches) {
     int i;
     uint8_t patch_sha1[SHA_DIGEST_SIZE];
diff --git a/applypatch/applypatch.h b/applypatch/applypatch.h
index e8ac3cc..fb58843 100644
--- a/applypatch/applypatch.h
+++ b/applypatch/applypatch.h
@@ -64,7 +64,7 @@
                      int retouch_flag);
 int SaveFileContents(const char* filename, const FileContents* file);
 void FreeFileContents(FileContents* file);
-int FindMatchingPatch(uint8_t* sha1, char** const patch_sha1_str,
+int FindMatchingPatch(uint8_t* sha1, const char** patch_sha1_str,
                       int num_patches);
 
 // bsdiff.c
diff --git a/minelf/Retouch.c b/minelf/Retouch.c
index 33809cd..a25380b 100644
--- a/minelf/Retouch.c
+++ b/minelf/Retouch.c
@@ -345,7 +345,7 @@
                 success = false;
                 goto out;
             }
-            if (SaveFileContents(CACHE_TEMP_SOURCE, file) < 0) {
+            if (SaveFileContents(CACHE_TEMP_SOURCE, &file) < 0) {
                 printf("Failed to back up source file.\n");
                 success = false;
                 goto out;
@@ -357,7 +357,7 @@
             printf("(now %ld bytes free for target)\n", (long)free_space);
         }
 
-        result = SaveFileContents(binary_name_atomic, file);
+        result = SaveFileContents(binary_name_atomic, &file);
         if (result != 0) {
             // Maybe the filesystem was optimistic: retry.
             enough_space = false;
