#9649·ghidra

Serialized Folder Item doesn’t include CD / EOCD metadata

Author: 0xXACreated Sep 17, 2026Updated Sep 17, 2026
LabelsStatus: Triage

Describe the bug

The serialized item produced through ItemSerializer doesn’t include Central Directory and End Of Central Directory metadata.

To Reproduce

To reproduce the behavior, you need to compile Ghidra from master branch and from fix branch:

For Ghidra compiled from master:

  1. Create a new project
  2. Press "I" to import any C executable (for example)
  3. Double click on the opened C executable to open it in CodeBrowser
  4. Click on "File" and then "Export Program"
  5. Name the file "WithoutFix". So we endup with "WithoutFix.gzf"

For Ghidra compiled from Fix Branch:

  1. Create a new project
  2. Press "I" and import the same C executable
  3. Double click on the opened C executable to open it in CodeBrowser
  4. Click on "File" and then "Export Program"
  5. Name the file "WithFix". So we endup with "WithFix.gzf"

Unzip Test For Bug Confirmation:

  1. Download the file attachments.zip and unzip it
  2. Execute the command as shown below:
[yuvraj@archlinux problems]$ unzip WithoutFix.gzf 
Archive:  WithoutFix.gzf
  End-of-central-directory signature not found.  Either this file is not
  a zipfile, or it constitutes one disk of a multi-part archive.  In the
  latter case the central directory and zipfile comment will be found on
  the last disk(s) of this archive.
unzip:  cannot find zipfile directory in one of WithoutFix.gzf or
        WithoutFix.gzf.zip, and cannot find WithoutFix.gzf.ZIP, period.

[yuvraj@archlinux problems]$ unzip WithFix.gzf 
Archive:  WithFix.gzf
warning [WithFix.gzf]:  53 extra bytes at beginning or within zipfile
  (attempting to process anyway)
  inflating: FOLDER_ITEM 

Expected behavior The serialized item should include CD / EOCD metadata.

Environment (please complete the following information):

  • OS: ArchLinux
  • Java Version: 26.0.2.1
  • Ghidra Version: 12.1.3
  • Ghidra Origin: official GitHub distro

Fix PR https://github.com/NationalSecurityAgency/ghidra/pull/9648

Source: NationalSecurityAgency/ghidra