Skip to content

fix: RS03 recognize tries all known medium sizes as candidates#153

Open
mezinster wants to merge 3 commits intospeed47:masterfrom
mezinster:upstream/rs03-recognize-fix
Open

fix: RS03 recognize tries all known medium sizes as candidates#153
mezinster wants to merge 3 commits intospeed47:masterfrom
mezinster:upstream/rs03-recognize-fix

Conversation

@mezinster
Copy link
Copy Markdown

Summary

Fix for RS03 recognition failing on augmented images whose medium size differs from the default. Previously the recognize routine tried only one candidate medium size; now it iterates through all known sizes.

Changes

  • src/rs03-recognize.c: candidate-loop implementation, with verbose-output suppression so single-image scans don't get noisier
  • regtest/database/*: golden file updates (the candidate loop changes verbose output across many bash test scenarios)
  • debian/rules: small companion change

Backward compatibility

Existing single-size augmented images continue to be recognized identically. The change is additive — new candidate sizes are tried only when the original lookup fails.

Coordinated PR set

This PR is part of a coordinated set of four PRs from mezinster/dvdisaster. Recommended merge order:

  1. chore: add github actions on push/PR #1 (this PR) — RS03 recognize fix — merge first
  2. chore: update README.md #2 — pytest framework + test migration — depends on chore: add github actions on push/PR #1 for recognize-related tests to pass
  3. fixes #3 — CI pytest integration + workflow docs — depends on chore: update README.md #2 for pytest to exist
  4. chore: enhance automated regtests #4--medium-size flag + macro precedence fix — independent, can merge any time

Cross-reference: PRs #2, #3, #4 will be linked here once opened.

Evgeny Mezin and others added 3 commits April 17, 2026 13:25
Replace single-guess layer size selection with multi-candidate search.
Both DM and NODM BD sizes are always tried, removing the need for
--no-bdr-defect-management at recognition time. Fixes recognition
of RS03 ECC data when image sector count doesn't match expected
medium size (BD-RE read-back, DM/NODM mismatch).

Addresses upstream issues speed47#69, speed47#97, speed47#135.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
RS03 multi-candidate search was producing verbose output for every
candidate tried, breaking bash regtest golden-file comparisons. Now
only the first candidate (matching old single-guess behavior) emits
verbose output; subsequent candidates run quietly. Also reorder
exhaustive candidates to try heuristic_layer_size() first.

Fix deb build: dpkg-buildpackage calls make distclean before configure,
hitting the stub Makefile. Override dh_auto_clean to skip when
GNUmakefile.config doesn't exist.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Remove the "trying image-derived layer sizes" verbose output blocks
from 32 golden database files. The RS03 multi-candidate search
(commit f8d747f) replaced the old two-phase recognize flow with a
single candidate loop where only the first candidate is verbose.
The removed blocks contained image-derived size attempts that all
failed—the new code still tries these sizes but quietly.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
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

Successfully merging this pull request may close these issues.

1 participant