pcb

Printing prints only 7 of 12 pages

Bug #1497963 reported by Traumflug
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
pcb
Fix Released
High
Peter Clifton

Bug Description

1:

- Started pcb with a layout.

- Selected menu -> file ->Print...

- Changed lprcommand to 'lp -d pdf' and hit OK ( -> default settings).

2: A full print of the layout.

3. A PDF listing 12 pages in the index on the first page, but actually having only 7 pages.

4. Layout and resulting PDF attached.

Revision history for this message
Traumflug (mah-jump-ing) wrote :
Revision history for this message
Traumflug (mah-jump-ing) wrote :
Revision history for this message
Traumflug (mah-jump-ing) wrote :

Trying to bisect the issue I found that behaviour apparently depends on the design. Attached a layout which prints all 12 pages with the very same version of pcb.

Revision history for this message
Traumflug (mah-jump-ing) wrote :

Partially solved it. This SO20 footprint in the Gen7Board layout causes an attempt to draw a circle with zero linewidth, which leads to a division by zero, which leads to invalid PostScript. These 5 pages aren't missing, but the printer driver outputs only up to the PostScript invalidation. The PS exporter exposes the same problem.

The fault happens in ps_draw_arc() in src/hid/ps/ps.c. Not yet found why drawing such an odd circle is attempted, there must be another bug. Possibly a bug when flipping the footprint from front to back.

Revision history for this message
Traumflug (mah-jump-ing) wrote :

Attempted to do this 'right'. That is, catch the pathological case, create a regression test for it, make sute PostScript output matches what's visible on screen.

Code is on branch LP1497963 and considered to be complete, please test.

Changed in geda-project:
importance: Undecided → High
status: New → In Progress
Revision history for this message
Traumflug (mah-jump-ing) wrote :

No objections? Fine. Forwarded the branch to master, then deleted it.

Changed in geda-project:
status: In Progress → Fix Committed
Traumflug (mah-jump-ing)
Changed in geda-project:
status: Fix Committed → Fix Released
Changed in pcb:
status: New → Fix Committed
importance: Undecided → High
milestone: none → next-bug-release
Changed in pcb:
assignee: nobody → Traumflug (mah-jump-ing)
Revision history for this message
Peter Clifton (pcjc2) wrote :

This one is heading for a major revert - after some review.

Changed in pcb:
status: Fix Committed → In Progress
no longer affects: pcb
affects: geda-project → pcb
Changed in pcb:
status: Fix Released → In Progress
assignee: nobody → Peter Clifton (pcjc2)
Revision history for this message
Traumflug (mah-jump-ing) wrote :

Please keep your fingers off geda-project unless you want to contribute to it.

Changed in geda-project:
status: New → Fix Released
Changed in pcb:
milestone: none → next-bug-release
Changed in pcb:
milestone: next-bug-release → future-bug-release
Changed in pcb:
milestone: pcb-4.1.1 → pcb-4.2.1
Changed in pcb:
milestone: pcb-4.2.1 → none
status: In Progress → Fix Committed
Changed in pcb:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.