Filepaths get incorrectly decoded leading to files being extracted in the wrong directory
@Anurag-S1ngh ya está trabajando en esto.
Desde el 31/10/2026.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 68/100
Línea de trabajo
Start by extracting the attached minimal archive after repackaging it as a .tar.xz on Debian 13, then trace how Extractcode decodes archive member paths and handles the +dfsg/LICENSES/Qt- segment. Compare the resulting path with the expected qt6-webengine-6.8.2+dfsg/LICENSES/Qt-GPL-exception-1.0.txt. Done means extraction preserves the directory structure and filename for this example.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
We are using Extractcode to extract large open source archives.
We have found a case where after extraction files some files from subdirectories are extracted into the extraction root and given very long and partially gibberish names.
This happened specifically upon extracting qt6-webengine 6.8.2+dfsg-4 (http://deb.debian.org/debian/pool/main/q/qt6-webengine/qt6-webengine_6.8.2+dfsg-4.debian.tar.xz).
After extraction the file qt6-webengine-6.8.2+dfsg/LICENSES/Qt-GPL-exception-1.0.txt was found in the extraction root with filename qt6-webengine-6.8.2Min _nyopeQu _ GPL-exception-1.0.txt
After some investigation we found that +dfsg/LICENSES/Qt- is being incorrectly decoded as UTF-7, leading to a full-path of qt6-webengine-6.8.2痻\u20fc눂ე葋\uf42dGPL-exception-1.0.txt which is the transliterated to qt6-webengine-6.8.2Min _nyopeQu _ GPL-exception-1.0.txt This means that the directory structure of the file is entirely lost and the file gets extracted to the extraction root instead of the correct directory.
The same happens for a selection of other files in the archive, but not reliably for every file. We were not able to determine what specifically triggers the issue, our assumption is that it has to do with Kanji encoding in some form (e.g. if the final part of a path can theoretically be decoded as a Kanji it incorrectly assumes it is UTF-7 encoded).
We have attached a minimal example of this (note: we had to package it as a .zip due to file support limitations on github, for testing it should be extracted and then reachived as a .tar.xz) with only this Qt-GPL-exception-1.0.txt file contained for easier verification and testing.
qt6-webengine-6.8.2+dfsg.zip
We were able to reproduce the issue reliably on a Debian 13 system, the issue was not reproducible on a Windows 11 machine.
- Lenguaje dominante
- Python
- Estrellas
- 39
- Forks
- 23
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de aboutcode-org/extractcode
-
Investigate failing testsAbierto
Dificultad 3/5 1-2 días Aptitud para principiantes 45/100
aboutcode-org/extractcode#75 · 2 comentarios ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
aboutcode-org/extractcode#73 · 4 reacciones ·
-
QA Failure for vmimage extractor (vmimage.py): libguestfs configuration on UbuntuPosiblemente ocupada @ArkaprabhaChakraborty la tomó hace 645 días. Abierto
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
aboutcode-org/extractcode#69 · 2 comentarios ·
-
Dificultad 3/5 1-2 días Aptitud para principiantes 45/100
aboutcode-org/extractcode#66 ·
-
Dificultad 3/5 1-2 días Aptitud para principiantes 42/100
aboutcode-org/extractcode#65 · 1 comentario ·
Todos los issues de aboutcode-org/extractcode
Issues similares
-
area:scripts area:tests bug priority:later
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Ikalus1988/MisakaNet#4358 ·
Los mantenedores suelen responder en 1 día
-
Discovered ports from service discovery are never propagated to modules in Module.load()Posiblemente ocupada @vishalmore90 la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
OWASP/Nettacker#1828 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
aws-samples/sample-per-model-bedrock#708 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
-
[Performance] Bound resolve_api_hashes raw fallback reads to the 1 MiB region actually scannedAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
sjkim1127/Reversecore_MCP#365 ·
Los mantenedores suelen responder en 1 día