Skip to content

PPTX: one unrecognized shape type aborts the whole presentation #2569

Description

A single shape whose type python-pptx can't identify makes MarkItDown fail the entire PPTX, losing every slide.

Repro

Convert a deck containing an unrecognized shape (docling ships one: powerpoint_unrecognized_shape.pptx, slide 2 has a shape named BadShape). It raises and returns nothing, though the other two slides are ordinary:

PptxConverter threw NotImplementedError with message: Shape instance of unrecognized shape type

PptxConverter reads shape.shape_type (in _is_picture, _is_table, and the group-shape check); for an unmapped shape that access raises and propagates out of convert().

Expected

One unreadable shape should be skipped and the rest of the deck converted, in the same spirit as the tolerance fixes already merged for PptxConverter: #2059 (tolerate None shape/notes text), #2194 (chart title without a text frame), and #2408 (top-zero sort).

The PR is written and tested; it adds a small _shape_type_or_none() helper that returns the type or None on NotImplementedError, so the shape falls through as "none of the handled types" and its own text is still recovered.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions