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

Spring cleaning! #2977

Merged
merged 21 commits into from
Mar 18, 2024
Merged

Spring cleaning! #2977

merged 21 commits into from
Mar 18, 2024

Conversation

pmatilai
Copy link
Member

Int vs enum type mismatches, initialization order consistency and other "fascinating" trivia.

These things are not really returning rpmRC values, especially as they
need to pass around RPMRC_MISSINGBUILDREQUIRES which is not part of the
enum.

For doRmSource(), 0 and 1 aren't any more enums values than 0 and -1 are,
and besides, the sole caller isn't even checking the return code.
-1 is not a valid rpmCompressedMagic. As this code is only interested in
whether the file checks as COMPRESSED_NOT, any legit value that differs
from that is fine for the purpose. No functional changes.
Enums are good for individual bitfield flag names, but combination of
the bits is not a legit value really.
It's legit C99 but it's rare and weird.
rpmfiDigestAlgo() can return 0 for errors in which case we have no
business trying to sign the thing, and crazily rpmfiDigestAlgo()
returns a signed int so there's that too...
I guess somebody somewhen a long long time ago thought this would make
it go that little bit faster. It doesn't.
This returns a tag value, not type.
The sentinel in the tag extension table is not an rpmTag enum
rpmfiDigestAlgo() hysterically returns a signed int (and that's what
really ought to be changed) but lets at least make all these uses
consistent.
For once, we get to use a restrictive type for something...
@pmatilai pmatilai merged commit 1d6987a into rpm-software-management:master Mar 18, 2024
1 check passed
@pmatilai pmatilai deleted the typeclean branch March 18, 2024 08:12
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