In short
- Nine times out of ten, a failed patch means the original file isn’t the exact file the patch was made from.
- Compare your file’s checksum with the one in the patch’s readme before trying anything else.
- For any other failure, show the log (bottom-right button) and read the message after
xdelta3:. - A failed patch never replaces your original file, so it’s safe to try again.
Patch error decision tree
Answer a few questions to find the right fix. Without JavaScript, every step is listed below and the links jump between them.
Find your fix
What happened when you clicked Apply patch?
Does your file’s checksum match the one the patch author lists?
This message appears for two xdelta3 errors: target window checksum mismatch and source file too short. Both mean your file isn’t the one the patch expects.
Which of these could apply to your file?
You have a different version of the file than the patch author used. Each option below explains how to get or make the right one.
Your source file is right. What else is going on?
With a matching source, the usual suspects are the patch order or a damaged patch file.
Show the log with the button at the bottom right. What follows “xdelta3:”?
Which is closest to what you’re seeing?
Which is it?
First, read the log
Delta Patcher shows a friendly message for the most common failure and says “See log for more information” for everything else. The log is hidden by default: click the log button at the bottom right of the window to show it. Errors look like this:
[21:04:52] An error has occurred: xdelta3: source file too short: XD3_INVALID_INPUT
The text between xdelta3: and the final code (like XD3_INVALID_INPUT) is the actual error. Find it below.
Errors when applying a patch
The file you are trying to patch is not the right one
xdelta3: target window checksum mismatch: XD3_INVALID_INPUT
- Problem
Delta Patcher stops and shows “The patch could not be applied: The file you are trying to patch is not the right one.”
- Likely cause
Your original file differs from the one used to create the patch. xdelta3 rebuilt part of the output, compared it with the checksum stored in the patch, and found a mismatch.
- How to check
Calculate your file’s checksum and compare it with the one in the patch’s readme or Patch info tooltip. How to check a file’s checksum.
- How to fix
Get the exact version the patch expects: the right region, revision and dump, unpatched and in the right format. The dedicated guide walks through each possibility.
- Prevention
Verify the source checksum before patching, and keep an untouched copy of every original.
Source file too short
xdelta3: source file too short: XD3_INVALID_INPUT
- Problem
The patch stops early. Delta Patcher shows the same “not the right one” message, and the log says
source file too short.- Likely cause
The patch needs data from a position beyond the end of your file, so your file is smaller than the original the patch was made from. Typical reasons are choosing the wrong file (such as a small
.cueinstead of the.bin), a trimmed ROM, an unheadered file when the patch expects a header, or an incomplete download.- How to check
Compare your file’s size in bytes with the size in the patch’s readme. Right-click → Properties (Windows) or Get Info (macOS) shows the exact byte count.
- How to fix
Select the correct, complete file. If the readme mentions an untrimmed or headered file, get or convert to that version (see same content, different format).
- Prevention
Check both size and checksum against the readme before patching.
Wrong game or file version (region, revision or dump)
target window checksum mismatch
- Problem
You’re sure the file is “the right game”, but the patch still reports a checksum mismatch.
- Likely cause
The same title often exists in several byte-different versions: regional releases (USA, Europe, Japan), revisions (1.0, 1.1, “Rev A”), and different dumps of the same disc. A patch only works with the exact version its author used.
- How to check
- Look for the region and revision in the readme, then compare with your file’s name and checksum.
- Tools like Rom Patcher JS show a file’s CRC32, MD5 and SHA-1 in your browser without uploading it.
- How to fix
Use a copy that matches the checksum listed by the patch author, made from media you own. If the author lists several supported versions, check whether each needs its own patch.
- Prevention
Keep a note of the checksum of each original you own, so you can match patches to files quickly.
The file has already been patched
target window checksum mismatch
- Problem
A patch fails on a file that worked before, or a second patch fails after the first succeeded.
- Likely cause
With Backup original file off, Delta Patcher replaces the original with the patched version under the same name. Applying the patch again means patching an already patched file, which doesn’t match. The same happens when a file was modified by a different patch first.
- How to check
Compare the file’s checksum with the original checksum from the readme. If it matches the patched checksum instead (when listed), it’s already patched.
- How to fix
Restore an untouched copy and patch that. If patches must be stacked, apply them in the documented order, each to the previous output. Applying more than one patch.
- Prevention
Tick Backup original file, or always work on a copy. The option resets each time Delta Patcher starts.
Same content, different format (headers, trimming, conversion)
source file too short / checksum mismatch
- Problem
The file is the right game and version, but it still fails.
- Likely cause
Byte-level patches need the same file format too. Common differences:
- Headers: some cartridge ROM dumps carry an extra header (for example, a 512-byte copier header on some SNES files) that shifts every byte.
- Trimmed files: tools that strip unused padding make a smaller file.
- Converted or compressed images: a patch made for a raw
.isoor.binwon’t apply to a compressed or converted image (such as CHD, CSO or RVZ), even when the game inside is identical.
- How to check
Read the readme for words like “headered”, “unheadered”, “untrimmed” or a specific file extension, and compare file sizes.
- How to fix
Convert your file back to the format the patch expects, using the same tool that converted it, then apply the patch. Add or remove the header if the readme says so.
- Prevention
Keep originals in their raw, unconverted form, and convert only after patching.
Corrupted or incomplete source file
target window checksum mismatch
- Problem
A patch fails on a file that should be correct, or fails partway through a large file.
- Likely cause
The file was damaged: an interrupted download, a bad disc read, a failing drive or USB stick, or an archive that didn’t extract completely.
- How to check
Compare the checksum with the known-good value. If the file came from an archive, test the archive (7-Zip’s Test command reports errors).
- How to fix
Make a new copy or dump from the original source and verify it before patching.
- Prevention
Verify checksums right after copying or dumping files, and keep an extra copy of originals.
The patch isn’t a valid XDelta patch
xdelta3: not a VCDIFF input: XD3_INVALID_INPUT
- Problem
The patch fails immediately with “See log for more information”, and the log mentions
not a VCDIFF inputor another invalid-input error.- Likely cause
- The patch is another format (IPS, BPS, UPS or PPF) that was renamed or mislabeled.
- The download is incomplete or corrupt, or it’s an HTML error page saved with a
.xdeltaname. - The patch is still inside its .zip or .7z archive.
- How to check
Look at the file size (an HTML page is usually a few kilobytes) and the original extension. Real XDelta patches start with the bytes
D6 C3 C4 00, which a hex editor will show.- How to fix
Extract the patch from its archive, download it again from the author’s page, or use a patcher for the actual format. XDelta vs IPS, BPS, UPS and PPF.
- Prevention
Download patches from the author’s official release page and check any checksum they publish for the patch itself.
The patch doesn’t appear in the file dialog
- Problem
When you click the folder button next to XDelta patch, your patch isn’t listed. Or you drag the patch onto the window and it lands in the Original file field.
- Likely cause
Delta Patcher’s patch dialog only shows files ending in
.xdelta, and drag and drop sends any other extension to the Original file field. Patches named.vcdiff,.xdelta3or.deltadon’t qualify, and neither does a patch still inside a .zip.- How to check
Turn on file extensions in your file manager (in Windows File Explorer: View → Show → File name extensions) and check the real name.
- How to fix
Extract the patch if needed, then rename it to end in
.xdelta. This doesn’t change the file’s contents. Watch out for doubled names likepatch.xdelta.txt.- Prevention
Keep file extensions visible when working with patches.
“Fill all the textboxes first!”
Fill all the textboxes first!
- Problem
Clicking Apply patch (or Create patch) shows this warning and nothing happens.
- Likely cause
A required field is empty. Applying needs both Original file and XDelta patch; creating needs Original file, Modified file and XDelta patch.
- How to check
Make sure every field shows a file path. In creation mode, the XDelta patch field is filled from the save dialog.
- How to fix
Select the missing file with its folder button, or drag the file onto the window.
- Prevention
If you meant to apply a patch but see four fields, switch back to application mode with the bottom-right switch button.
Permission problems: the patched file can’t be written
xdelta3: file open failed: write: …
- Problem
The patch fails and the log says
file open failed, followed by a reason such as “Access is denied” (Windows) or “Permission denied” (macOS and Linux).- Likely cause
Delta Patcher writes the patched file into the same folder as the original, so it needs permission to create files there. Common blockers:
- protected folders such as
C:\Program Filesor system locations; - read-only media, network shares or archives opened as folders;
- a file marked read-only, or one that’s open in another program such as an emulator;
- Windows Controlled folder access, or a macOS folder the app hasn’t been allowed to use.
- protected folders such as
- How to check
Try creating a new file in the same folder yourself. If that fails, the folder is the problem.
- How to fix
Copy the original file and patch into a folder you own, such as a new folder in Documents, close any program using the file, and apply the patch there. On macOS, allow folder access when prompted.
- Prevention
Keep a dedicated working folder for patching, outside system and synced folders.
Not enough disk space
xdelta3: write failed: …
- Problem
A large patch fails partway through, and the log says
write failedwith a reason like “There is not enough space on the disk” or “No space left on device”.- Likely cause
While patching, the original file and the new file exist side by side, so you need free space at least equal to the patched file’s size. Drives formatted as FAT32 also can’t hold files larger than 4 GB.
- How to check
Compare the free space on the drive with the expected size of the patched file, and check the drive’s file system if the output is over 4 GB.
- How to fix
Free up space, or move the files to a drive with more room (formatted as NTFS, exFAT, APFS or ext4 for files over 4 GB), then try again.
- Prevention
Check free space before patching large disc images.
Problems after patching
The patched file doesn’t work, or looks unpatched
- Problem
Delta Patcher said “Patch successfully applied!”, but the result crashes, shows glitches, or behaves like the unpatched original.
- Likely cause
- You’re opening the wrong file: the original rather than the
PATCHEDcopy, or an old copy elsewhere. - Checksum validation was off, or the patch was created without checksums, so a wrong source “succeeded”.
- The patch needs other patches, an updated emulator, or specific settings described in its readme.
- For disc images, a
.cuesheet still points to the old.binname. - Old save files or save states from the unpatched version are being loaded.
- You’re opening the wrong file: the original rather than the
- How to check
Compare the output’s checksum with the patched checksum in the readme, if there is one. If it matches, the patch applied correctly and the problem lies in how the file is used.
- How to fix
Re-patch a verified original with checksum validation on, open the correct output file, update any
.cuereferences, and follow the patch’s own instructions for emulator settings and saves.- Prevention
Keep validation on, name outputs clearly, and read the readme before you start.
Patching files larger than 4 GB fails
- Problem
Patching a very large disc image fails in an older Delta Patcher, even with the correct file.
- Likely cause
Support for files larger than 4 GB arrived in Delta Patcher 3.1.5.
- How to check
Open the About dialog (bottom-left button) to see your version. The current release is 3.1.6.
- How to fix
Update from the download page, and make sure the destination drive isn’t formatted as FAT32.
- Prevention
Use the latest release for large files.
Files with non-English characters in their path fail on Linux
- Problem
On Linux, files or folders with accented, Japanese or other non-ASCII characters can’t be opened or patched.
- Likely cause
A bug with non-ASCII paths on Linux was fixed in Delta Patcher 3.1.6.
- How to check
Try the same files in a folder with a plain ASCII name. If that works, you’ve hit this bug.
- How to fix
Update to 3.1.6 or later. Until then, rename the folder or file using plain ASCII characters.
- Prevention
Keep Delta Patcher up to date. Flathub installs update automatically with
flatpak update.
Delta Patcher won’t open
- Problem
Nothing happens, or the system blocks the program, when you try to start it.
- Likely cause
- Windows: SmartScreen blocked an unsigned app, the 64-bit build is running on 32-bit Windows (“This app can’t run on your PC”), or Windows is older than Windows 7.
- macOS: Gatekeeper blocked an app that isn’t notarized, or macOS is older than 11.
- Linux: GTK 3 is missing, glibc is older than 2.38, or the file isn’t executable.
- How to check
Note the exact message. On Linux, start the program from a terminal to see it.
- Prevention
Download the build that matches your system and architecture.
Prevention checklist
Run through this before every patch and most of the errors above never happen:
Still stuck?
If none of the entries above fit, ask in the place the patch came from. The patch author or their community knows which source files work. Include:
- the patch name and version, and where you downloaded it;
- your source file’s name, size and checksum (CRC32, MD5 or SHA-1);
- your Delta Patcher version and operating system;
- the exact log message.
For bugs in Delta Patcher itself, such as crashes or a correct patch that fails only in Delta Patcher, check the Delta Patcher issue tracker (opens external site) and report it there with the same details. This site isn’t affiliated with the developer and can’t provide support for the software.