Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Join chunk ordering rules #467

Open
ProgramMax opened this issue Sep 28, 2024 · 2 comments
Open

Join chunk ordering rules #467

ProgramMax opened this issue Sep 28, 2024 · 2 comments

Comments

@ProgramMax
Copy link
Collaborator

§ 5.6 Chunk ordering lists out specific chunks and their ordering requirements.

§ 14.3 Ordering of chunks lists out the more general rules.

These two sections should perhaps be merged.
I don't see a benefit to having them separate.
But I do see drawbacks (such as a reader thinking they have absorbed the ordering rules after only seeing half with no indication to them).

I'm adding the "Future edition considerations" Milestone because I don't want to introduce new changes to Third Edition. This ordering split has existed since PNG 1.0 spec.

@randy408
Copy link

Can't help but notice the acTL chunk listed as "Before PLTE and IDAT" under § 5.6 Chunk ordering, I can't find anything that supports the "before PLTE" part in the original specification or the libpng patch. Am I missing something?

@ProgramMax
Copy link
Collaborator Author

Can you help me understand your question a little more? I don't fully grasp it.

When you say the original specification, if you meant PNG 1.0, § 4.3. Summary of standard chunks has several "Before PLTE" (cHRM, gAMA, sBIT). So perhaps you meant the original Mozilla spec for APNG?

I haven't carefully combed through the libpng patch but I would believe it could be missing something.

I wouldn't be surprised if the original Mozilla APNG patch simply left out some of the ordering requirements and the libpng patch was based on it. Then we filled the hole but the libpng patch didn't get updated.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants