Skip to content

[FIX] 48047: Änderungen im Content Style wirken sich nicht aus - #11833

Merged
chfsx merged 1 commit into
ILIAS-eLearning:trunkfrom
srsolutionsag:fix/48047/trunk/container-legacy-zip-entry
Jul 28, 2026
Merged

[FIX] 48047: Änderungen im Content Style wirken sich nicht aus#11833
chfsx merged 1 commit into
ILIAS-eLearning:trunkfrom
srsolutionsag:fix/48047/trunk/container-legacy-zip-entry

Conversation

@chfsx

@chfsx chfsx commented Jul 28, 2026

Copy link
Copy Markdown
Member

Entries inside a container are stored relative since Mantis 45580 / 47237, e.g. "style.css". Containers written before that hold the same file as "/style.css", and once such a container is written again both variants exist side by side. Streams::ofFileInsideZIP() looked up the variant with the leading slash first, so consumers kept receiving the outdated legacy entry: a content style is written correctly but never changes for the user. Newly created styles are not affected, copies inherit the problem with the cloned ZIP, and export/import produces a clean container.

ofFileInsideZIP() now looks up the relative entry first and falls back to the legacy one, which fixes existing containers without touching them - the ZIP stream wrapper matches entry names literally, so no container can be resolved to the wrong entry by accident.

Additionally the legacy entries are cleaned up over time: addUploadToContainer() no longer produces entries with a leading slash itself when the parent path inside the container is empty, and removePathInsideContainer() removes both variants of the given path.

Entries inside a container are stored relative since Mantis 45580 / 47237,
e.g. "style.css". Containers written before that hold the same file as
"/style.css", and once such a container is written again both variants exist
side by side. Streams::ofFileInsideZIP() looked up the variant with the leading
slash first, so consumers kept receiving the outdated legacy entry: a content
style is written correctly but never changes for the user. Newly created styles
are not affected, copies inherit the problem with the cloned ZIP, and
export/import produces a clean container.

ofFileInsideZIP() now looks up the relative entry first and falls back to the
legacy one, which fixes existing containers without touching them - the ZIP
stream wrapper matches entry names literally, so no container can be resolved
to the wrong entry by accident.

Additionally the legacy entries are cleaned up over time: addUploadToContainer()
no longer produces entries with a leading slash itself when the parent path
inside the container is empty, and removePathInsideContainer() removes both
variants of the given path.
@chfsx chfsx self-assigned this Jul 28, 2026
@chfsx chfsx added the bugfix label Jul 28, 2026
@chfsx
chfsx merged commit 674a07b into ILIAS-eLearning:trunk Jul 28, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant