Skip to content

Corrupt LAZ files cause PotreeConverter to be stuck in the counting stage #692

@m-schuetz

Description

@m-schuetz

Some laz files have corrupted chunk tables that make PotreeConverter stuck.

  • The first call to LASreadPoint::seek -> init_dec() -> read_chunk_table fails to read that chunk table and sets number_chunks to 0.
  • LASreadPoint::seek -> search_chunk_table() then recurses until stackoverflow because it is called with lower: 0 and upper: 0. Unfortunately, that stackoverflow ends up making the threads stuck forever.

As a workaround, I've added two throw statements to laszip so that laszip_seek_point() will return 0/false if a corrupt chunk table is encountered.

Image Image

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions