[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

gEDA-cvs: pcb.git: branch: master updated (e2c8f6f4878b68e4e0c1d4e15ffac00db12d968a)



The branch, master has been updated
       via  e2c8f6f4878b68e4e0c1d4e15ffac00db12d968a (commit)
       via  aa7196dc29a761ecddda1a40d68fedf39ab78c31 (commit)
      from  eaf012c425a5adc9a31d857d3aa9e906d844c97f (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.


=========
 Summary
=========

 configure.ac                |   16 ++++++++++++++++
 src/action.c                |   11 ++++++++---
 src/hid/lesstif/main.c      |    6 ++++++
 src/hid/lesstif/xincludes.h |    4 ++++
 4 files changed, 34 insertions(+), 3 deletions(-)


=================
 Commit Messages
=================

commit e2c8f6f4878b68e4e0c1d4e15ffac00db12d968a
Author: DJ Delorie <dj@xxxxxxxxxxx>
Commit: DJ Delorie <dj@xxxxxxxxxxx>

    Detect XRender + Xinerama to avoid BadMatch
    
    Closes-bug: lp-699251
    
    This seems to happen when your X server is using both Xinerama and
    XRender, and only affects the XRenderChangePicture() call with a
    clip_mask.  So, I added code to detect Xinerama+XRender and disable
    XRender if they're found.

:100644 100644 fd14c98... 1c4ee58... M	configure.ac
:100644 100644 be9a330... 9335490... M	src/hid/lesstif/main.c
:100644 100644 7245a77... af1314c... M	src/hid/lesstif/xincludes.h

commit aa7196dc29a761ecddda1a40d68fedf39ab78c31
Author: DJ Delorie <dj@xxxxxxxxxxx>
Commit: DJ Delorie <dj@xxxxxxxxxxx>

    Don't set FOUND flag on silk lines.
    
    Closes-bug: lp-699291

:100644 100644 cb2a7bf... 52157a0... M	src/action.c

=========
 Changes
=========

commit e2c8f6f4878b68e4e0c1d4e15ffac00db12d968a
Author: DJ Delorie <dj@xxxxxxxxxxx>
Commit: DJ Delorie <dj@xxxxxxxxxxx>

    Detect XRender + Xinerama to avoid BadMatch
    
    Closes-bug: lp-699251
    
    This seems to happen when your X server is using both Xinerama and
    XRender, and only affects the XRenderChangePicture() call with a
    clip_mask.  So, I added code to detect Xinerama+XRender and disable
    XRender if they're found.

diff --git a/configure.ac b/configure.ac
index fd14c98..1c4ee58 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1000,6 +1000,22 @@ case "$have_xrender:$enable_xrender" in
      ;;
 esac
 
+# ------------- Xinerama -------------------
+have_xinerama=no
+AC_CHECK_LIB(Xinerama,XineramaQueryExtension,have_xinerama=yes,have_xinerama=no,$X_LIBS)
+
+AC_ARG_ENABLE([xinerama],
+[  --disable-xinerama       Compile and link with Xinerama [default=yes]])
+case "$have_xinerama:$enable_xinerama" in
+   no:* ) ;;
+   *:no ) ;;
+   * )
+     X_LIBS="-lXinerama $X_LIBS"
+     AC_DEFINE([HAVE_XINERAMA], 1,
+		[Define to 1 if Xinerama is available])
+     ;;
+esac
+
 # ------------- dmalloc -------------------
 dnl dmalloc checks
 with_dmalloc=no
diff --git a/src/hid/lesstif/main.c b/src/hid/lesstif/main.c
index be9a330..9335490 100644
--- a/src/hid/lesstif/main.c
+++ b/src/hid/lesstif/main.c
@@ -2158,6 +2158,12 @@ lesstif_parse_arguments (int *argc, char ***argv)
 #ifdef HAVE_XRENDER
   use_xrender = XRenderQueryExtension (display, &render_event, &render_error) &&
 	XRenderFindVisualFormat (display, DefaultVisual(display, screen));
+#ifdef HAVE_XINERAMA
+  /* Xinerama and XRender don't get along well */
+  if (XineramaQueryExtension (display, &render_event, &render_error)
+      && XineramaIsActive (display))
+    use_xrender = 0;
+#endif /* HAVE_XINERAMA */
 #endif /* HAVE_XRENDER */
 
   rcount = 0;
diff --git a/src/hid/lesstif/xincludes.h b/src/hid/lesstif/xincludes.h
index 7245a77..af1314c 100644
--- a/src/hid/lesstif/xincludes.h
+++ b/src/hid/lesstif/xincludes.h
@@ -41,5 +41,9 @@
 #include <X11/extensions/Xrender.h>
 #endif /* HAVE_XRENDER */
 
+#ifdef HAVE_XINERAMA
+#include <X11/extensions/Xinerama.h>
+#endif /* HAVE_XINERAMA */
+
 #undef Mask
 

commit aa7196dc29a761ecddda1a40d68fedf39ab78c31
Author: DJ Delorie <dj@xxxxxxxxxxx>
Commit: DJ Delorie <dj@xxxxxxxxxxx>

    Don't set FOUND flag on silk lines.
    
    Closes-bug: lp-699291

diff --git a/src/action.c b/src/action.c
index cb2a7bf..52157a0 100644
--- a/src/action.c
+++ b/src/action.c
@@ -1237,6 +1237,7 @@ NotifyMode (void)
 	/* create line if both ends are determined && length != 0 */
 	{
 	  LineTypePtr line;
+	  int maybe_found_flag;
 
 	  if (PCB->Clipping
 	      && Crosshair.AttachedLine.Point1.X ==
@@ -1253,6 +1254,12 @@ NotifyMode (void)
 	      Crosshair.AttachedLine.Point2.Y = Note.Y;
 	    }
 
+	  if (TEST_FLAG (AUTODRCFLAG, PCB)
+	      && ! TEST_SILK_LAYER (CURRENT))
+	    maybe_found_flag = FOUNDFLAG;
+	  else
+	    maybe_found_flag = 0;
+
 	  if ((Crosshair.AttachedLine.Point1.X !=
 	       Crosshair.AttachedLine.Point2.X
 	       || Crosshair.AttachedLine.Point1.Y !=
@@ -1265,9 +1272,7 @@ NotifyMode (void)
 					  Crosshair.AttachedLine.Point2.Y,
 					  Settings.LineThickness,
 					  2 * Settings.Keepaway,
-					  MakeFlags ((TEST_FLAG
-						      (AUTODRCFLAG,
-						       PCB) ? FOUNDFLAG : 0) |
+					  MakeFlags (maybe_found_flag |
 						     (TEST_FLAG
 						      (CLEARNEWFLAG,
 						       PCB) ? CLEARLINEFLAG :




_______________________________________________
geda-cvs mailing list
geda-cvs@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-cvs