Skip to content

Commit

Permalink
Fixes off by one bug.
Browse files Browse the repository at this point in the history
  • Loading branch information
hediet committed Apr 14, 2021
1 parent f028040 commit 0b7e6ce
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 9 deletions.
5 changes: 3 additions & 2 deletions crates/app/src/db.rs
Original file line number Diff line number Diff line change
Expand Up @@ -176,13 +176,14 @@ impl<'a> Db<'a, TransactionMarker> {
for matching in matchings {
let pdf_hash = matching.image.map(|p| p.pdf_hash);
let video_ms = matching.video_time.as_millis() as u32;
let page_idx = matching.image.map(|p| p.page_idx as u32).unwrap_or(0);
let page_nr = matching.image.map(|p| p.page_nr as u32).unwrap_or(0);
let page_offset = page_nr - 1;
sqlx::query!(
"INSERT INTO videos_mapping(video_id, video_ms, pdf_hash, page) VALUES (?, ?, ?, ?)",
video_id,
video_ms,
pdf_hash,
page_idx,
page_offset,
)
.execute(self.get_conn_mut())
.await?;
Expand Down
5 changes: 3 additions & 2 deletions crates/app/src/pdf_to_images.rs
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,8 @@ pub struct PdfPage<'t> {
pub pdf_path: &'t Path,
pub pdf_hash: &'t str,
pub image_path: PathBuf,
pub page_idx: usize,
/// 1-based.
pub page_nr: usize,
}

impl<'a> MatchableImage for &PdfPage<'a> {
Expand Down Expand Up @@ -137,7 +138,7 @@ fn pdf_to_images<'t>(
Ok(pages
.into_iter()
.map(|p| PdfPage {
page_idx: p.index as usize,
page_nr: p.page_nr as usize,
image_path: p.image_path,
pdf_path,
pdf_hash,
Expand Down
11 changes: 6 additions & 5 deletions crates/pdftocairo/src/pdftocairo.rs
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,8 @@ use crate::pdf_info;

#[derive(Debug, Clone, Eq, PartialEq)]
pub struct Page {
pub index: u32,
/// Starts with 1.
pub page_nr: u32,
pub image_path: PathBuf,
}

Expand Down Expand Up @@ -219,15 +220,15 @@ pub fn pdftocairo<P: Fn(ProgressInfo)>(
let file_name = file_name.to_string_lossy();

let name_without_ext = file_name.split('.').next().unwrap();
let page_idx_str = &name_without_ext[2..];
let page_idx: u32 = page_idx_str.parse().unwrap();
let page_nr_str = &name_without_ext[2..];
let page_nr: u32 = page_nr_str.parse().unwrap();
result.push(Page {
image_path: item.path(),
index: page_idx,
page_nr,
});
}

result.sort_by_key(|r| r.index);
result.sort_by_key(|r| r.page_nr);

Ok(result)
}
Expand Down

0 comments on commit 0b7e6ce

Please sign in to comment.