X-Authentication-Warning: delorie.com: mail set sender to geda-user-bounces using -f X-Recipient: geda-user AT delorie DOT com X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on server X-Spam-Level: * X-Spam-Status: No, score=1.3 required=4.0 tests=RDNS_NONE autolearn=no version=3.3.2 From: =?utf-8?B?0JDQvdGC0L7QvSDQlNGD0LHQvdGP0Lo=?= To: gEDA users mailing list Subject: [geda-user] [pcb] An advice on (possible) AutoEnforceDRC-related bugfix needed Date: Wed, 30 Dec 2015 02:57:29 +0200 Message-ID: <1628443.xzcfV1e99J@office.tfsoft.local> User-Agent: KMail/4.14.9 (Linux/3.16.7-29-desktop; KDE/4.14.9; x86_64; ; ) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="nextPart16496696.u5FkIJ1Z4c" Content-Transfer-Encoding: 7Bit Reply-To: geda-user AT delorie DOT com This is a multi-part message in MIME format. --nextPart16496696.u5FkIJ1Z4c Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" Spent several days trying to fix this bug: https://bugs.launchpad.net/pcb/+bug/1013358 I was convinced that it is due to rounding errors somewhere in find.c/search.c, when DRC clearance and grid spacing are the same. But turns out, it is not. Please, see the trivial patch in attachment. Looks like it solves the described problem. I'm suspicious if the bug is fixed _that_ simple (taking into account my shallow knowledge of codebase). It would be great if someone explain what was the intention of "PCB->Bloat + 1" in that place? Maybe it is vital for some other actions, not related to this bug? Thanks! -- Best regards, Anton Dubniak --nextPart16496696.u5FkIJ1Z4c Content-Disposition: attachment; filename="0001-a-possible-fix-of-the-LP1013358-bug.patch" Content-Transfer-Encoding: 7Bit Content-Type: text/x-patch; charset="UTF-8"; name="0001-a-possible-fix-of-the-LP1013358-bug.patch" From e444252871c2f7d054236edc9c16b77dc9615f9f Mon Sep 17 00:00:00 2001 From: Anton Dubniak Date: Wed, 30 Dec 2015 02:12:39 +0200 Subject: [PATCH] a possible fix of the LP1013358 bug --- src/line.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/line.c b/src/line.c index 469f0f6..73c5c69 100644 --- a/src/line.c +++ b/src/line.c @@ -304,7 +304,7 @@ drc_lines (PointType *end, bool way) s = 0.5; last = -1; line1.Flags = line2.Flags = NoFlags (); - line1.Thickness = Settings.LineThickness + 2 * (PCB->Bloat + 1); + line1.Thickness = Settings.LineThickness + 2 * PCB->Bloat; line2.Thickness = line1.Thickness; line1.Clearance = line2.Clearance = 0; line1.Point1.X = Crosshair.AttachedLine.Point1.X; -- 2.1.4 --nextPart16496696.u5FkIJ1Z4c--