Commit Graph

5861 Commits

Author SHA1 Message Date
Peter Hutterer
8234af6c6a xfree86: remove Ubuntu-ism.
Additional #include was required due to broken libc headers or something like
that. Remove it, there's more to the world than ubuntu alone.
2008-05-13 11:17:39 +09:30
Peter Hutterer
59b8d29b3a Xi: Fix up ProcIVector, got out of sync with the protocol.
When the opcode squash happened in the protocol, the processing vector got out
of sync for a few requests. As a result, client and server would interpret
requests differently, leading to a couple of BadLength problems.
2008-05-13 11:17:02 +09:30
Peter Hutterer
1fc1a2897e Remove UndisplayCursor API.
We can achieve the same thing by simply displaying a NullCursor, there's no
need for a separate API.
2008-05-13 11:17:02 +09:30
Peter Hutterer
913989d643 mi: don't try to display a cursor for devices w/o cursors. 2008-05-13 11:17:02 +09:30
Peter Hutterer
248a1df634 render: don't dereference cursor if cursor is NULL. 2008-05-13 11:17:02 +09:30
Aaron Plattner
c50b5d9789 Bug #14692: Allow drivers to have a say in Xinerama visual consolidation.
Create a new exported global variable, XineramaVisualsEqualPtr.  Use this
pointer to decide whether two visuals are equal during visual consolidation.
This pointer can be wrapped, which allows drivers and extensions to control
which visuals are consolidated.  A wrapper can reject the visuals without
calling down, but must call down and return that result if it deems the visuals
equal.  This ensures that all layers agree that the visuals are equal.

Pass the screen of the other visual into the VisualsEqual callchain.

Don't free PanoramiXVisuals since we need it for PanoramiXTranslateVisualID.

Don't skip the first visual on the other screen in PanoramiXMaybeAddVisual.

Skip the loop in PanoramiXTranslateVisualID if screen is 0.
2008-05-12 14:49:53 -07:00
Adam Jackson
86678e7cc2 Fix fbdevhw initialization for PCI drivers.
graphics/fb%d, not graphics:fb%d.  Thanks sysfs.  Thysfs.
2008-05-12 14:53:37 -04:00
Adam Jackson
1c8bd318fb X n'est pas une print API. 2008-05-12 14:15:11 -04:00
Jeremy Huddleston
f9fae16456 XQuartz: Added some version checking protection so we don't trigger an infinite exec loop with new /usr/X11/bin/Xquartz and older X11.app
(cherry picked from commit 78032815ae)
2008-05-12 10:42:20 -07:00
Jeremy Huddleston
ac4e33a9cd XQuartz: More startup work... listen if we're the actual server
(cherry picked from commit 3b0afb47c3)
2008-05-12 10:42:16 -07:00
Jeremy Huddleston
a7800d9355 XQuartz: Starting to work on the new Mach IPC startup stuff for better launchd, ApplicationServices, and Dock support
(cherry picked from commit 9b67fca9b7)
2008-05-12 10:42:12 -07:00
James Cloos
04211c3532 Prevent the -wm command line option from causing a SEGV
The -wm (when mapped) option for the BackingStore support has been
causing the server to dereference a NULL pointer.

This has probably been the case since backing store has been
implemented on top of Composite.

It looks like (some of?) Composite didn’t expect its WIndowPtr
argument to be the root window.

In Composite’s compCheckRedirect() function we now avoid calling
compAllocPixmap() and compFreePixmap() when the pWin pointer’s
parent member is NULL, as is it the case with a server’s root window.

This addresses:

https://bugs.freedesktop.org/show_bug.cgi?id=15878
2008-05-12 03:03:13 -04:00
James Cloos
7e768c08f7 Clean up whitespace 2008-05-12 02:53:59 -04:00
Dave Airlie
3b6735528e pci: don't do this pci stuff when we don't have hw access 2008-05-12 16:36:42 +10:00
Julien Cristau
9dfb525f6c kdrive: allow disabling Composite
KdInitOutput() used to enable Composite when it was disabled by default,
but now this hack prevents ``-extension Composite'' from working.
Remove it, as Composite is enabled by default anyway.
2008-05-11 23:35:41 +02:00
Alan Coopersmith
1a01e96c6d Return a valid X error when stuck in font alias loop
Part of fix for Sun bug 4258475
<http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=4258475>
2008-05-09 15:38:44 -07:00
Drew Parsons
7b3066d9b9 Merge branch 'master' of git://anongit.freedesktop.org/git/xorg/xserver into upstream-experimental 2008-05-10 00:01:15 +10:00
Drew Parsons
2a3d1421e0 Disable D-BUS from Xprint.
Use dummy config functions to replace those from config/config.c, and
therefore do not link Xprt with $CONFIG_LIB.

Works around an endlessly spinning loop in dix/dispatch.c::Dispatch()
(WaitForSomething() not waiting) when built with dbus, which was
causing Xprt to use 95% cpu.
2008-05-09 23:58:19 +10:00
Jeremy Huddleston
315f089056 XQuartz: Reorganized some of the build system in prep for the Mach IPC startup work.
(cherry picked from commit 2232c91d5c)
2008-05-08 19:58:24 -07:00
Jeremy Huddleston
28ac79450c Updated .gitignore for new Xquartz layout
(cherry picked from commit cd4d2355e2)
2008-05-08 19:58:18 -07:00
Jeremy Huddleston
a07c5ad172 XQuartz: Set bundle version to 2.3.0
(cherry picked from commit 8a0524b30e)
2008-05-08 19:58:15 -07:00
Jeremy Huddleston
05f23ed3ea XQuartz: Fixed some issue in our bundle creation
(cherry picked from commit 330ffad547)
2008-05-08 19:58:09 -07:00
Jeremy Huddleston
90b963c0da Set CSRG_BASED on OSX
(cherry picked from commit ff085deba1)
2008-05-08 19:58:04 -07:00
Peter Hutterer
ff013b0da4 config: override xkb_{r,m,l,v} with Xkb{r,m,l,v} if the latter is set.
The HAL spec says that input.xkb.{rmlv}* can be sent, but if the user
specifies a X-specific {rmlv}, then this is overridden through the use of
input.x11_options.Xkb{RMLV}.
However, the way how the server parses options--by ignoring capitalisation,
underscores and spaces--the HAL and the x11_options would override each other.

So we simply filter the options, letting Xkb{RMLV} override xkb_{rmlv} and
only actually add them to the device after parsing _all_ options.

* rmlv ... rules, model, layout, variant

See Bug 13037 <http://bugs.freedesktop.org/show_bug.cgi?id=13037>
(cherry picked from commit fc35d1e3be)
2008-05-09 10:09:35 +09:30
Peter Hutterer
901978ebe0 config: remove trailing whitespaces.
It makes my vim look ugly. Put "let c_space_errors=1" into your .vimrc.
(cherry picked from commit 1f54c05cf8)
2008-05-09 10:09:25 +09:30
Daniel Stone
1c54c14889 Revert "GL: Make errors non-fatal"
Turns out this just caused segfaults further down the line.  Oops.

This reverts commit 268d61e00c.
2008-05-09 00:26:16 +03:00
Adam Jackson
f17ba5d584 Bug #13104: Remove broken XAA a1 glyph fast path. 2008-05-08 16:04:24 -04:00
Adam Jackson
ddaecfa13c Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver 2008-05-08 14:33:58 -04:00
Peter Hutterer
fc35d1e3be config: override xkb_{r,m,l,v} with Xkb{r,m,l,v} if the latter is set.
The HAL spec says that input.xkb.{rmlv}* can be sent, but if the user
specifies a X-specific {rmlv}, then this is overridden through the use of
input.x11_options.Xkb{RMLV}.
However, the way how the server parses options--by ignoring capitalisation,
underscores and spaces--the HAL and the x11_options would override each other.

So we simply filter the options, letting Xkb{RMLV} override xkb_{rmlv} and
only actually add them to the device after parsing _all_ options.

* rmlv ... rules, model, layout, variant

See Bug 13037 <http://bugs.freedesktop.org/show_bug.cgi?id=13037>
2008-05-08 16:58:31 +09:30
Peter Hutterer
1f54c05cf8 config: remove trailing whitespaces.
It makes my vim look ugly. Put "let c_space_errors=1" into your .vimrc.
2008-05-08 14:05:56 +09:30
Peter Hutterer
1a314a1ef0 Revert "config: deprecate (and ignore) the use of input.xkb.whatever options."
daniels:
"Hrm, I'd prefer to have input.xkb.{m,l,v,o} be the primary keys, and
have input.x11_options be a backup for that, rather than the former
being deprecated, for the reasons I listed earlier ..."

see http://bugs.freedesktop.org/show_bug.cgi?id=13037#c51

This reverts commit 26188875de.
2008-05-08 13:16:48 +09:30
Daniel Stone
cf20df39cc XKB: Actually explain keymap failures
When something went wrong building a keymap, try to explain to the user
what it actually was, instead of the dreaded 'Failed to load XKB keymap'
catch-all.
2008-05-07 22:56:03 +03:00
Daniel Stone
641a5f955b Build: Ensure xf86DefModeSet.c ends in an empty line
This shuts up a warning.
2008-05-07 22:29:04 +03:00
Daniel Stone
268d61e00c GL: Make errors non-fatal
GLX, there's more to the world than just you.  If you fail to load the
software renderer, don't bring the entire server down.

The error path probably needs better testing on this one, but it seems
mostly okay to me.
2008-05-07 22:28:45 +03:00
Adam Jackson
9c2e0871cf Bug #13104: XAA: Adapt to glyph storage changes.
Glyph bits are now stored in a proper pixmap, not just hanging off the
end of a GlyphRec.
2008-05-07 13:21:26 -04:00
Peter Hutterer
26188875de config: deprecate (and ignore) the use of input.xkb.whatever options.
These options are still sent by some HAL implementations (e.g. HAL on FC8),
and may overwrite the options set in the x11-input.fdi file.
For a more detailed description of why see Bug #13037, comment 42.

X.Org Bug 13037 <http://bugs.freedesktop.org/show_bug.cgi?id=13037#c42>
2008-05-07 13:58:47 +09:30
Alan Coopersmith
b6a0c6d486 Allow using libmd instead of libcrypto for SHA1 hashing in render/glyph.c
Builders can force one or the other by passing SHA1_LIB & SHA1_CFLAGS
to configure
2008-05-06 17:06:34 -07:00
Adam Jackson
718652eaf9 Bug #13104: Don't let XAA glyph pixmaps anywhere near video memory.
Since glyphs are stored in pixmaps now, they can make their way into VRAM,
which invalidates a bunch of fast-path assumptions in the XAA code.  Thus
you end up doing color-expands or WriteBitmap from la-la land and your
aliased glyphs go all funny.

Since XAA isn't ever growing the ability to do sane glyph accel, just force
glyph pixmaps into host memory by catching them at CreatePixmap time.
2008-05-06 17:52:37 -04:00
Jeremy Huddleston
a85d3ac87c XQuartz: Fixed typo
(cherry picked from commit 56b7988d26)
2008-05-06 03:04:13 -07:00
Jeremy Huddleston
077ced6384 XQuartz: Added uncommitted files
(cherry picked from commit e414ec462c)
2008-05-06 03:04:09 -07:00
Jeremy Huddleston
80e502c5d1 Fixed up dist
(cherry picked from commit f225222ba2)
2008-05-06 03:04:04 -07:00
Jeremy Huddleston
7295e54433 XQuartz: Move server bits into bundle and setup stub in /usr/X11/bin/Xquartz in prep for startup rewrite
(cherry picked from commit 453a982e63)
2008-05-06 02:49:48 -07:00
Ben Byer
d41d677ab4 Xquartz: experimental embedding of Sparkle.framework
(cherry picked from commit b7a1a640ce)
2008-05-06 02:49:41 -07:00
Peter Hutterer
9e0d73fd8a xfree86: call SetCursor for the VCP when switching between SW/HW rendering.
We need a manual call to SetCursor when we switch from SW to HW rendering and
the other way round. This way we display the new cursor after removing the old
one.
In addition, we only update the internal state for the VCP's sprite. This way,
when we switch back to HW rendering the state is up-to-date and wasn't
overwritten with the other sprite's state.

The second part is a hack. It would be better to keep a state for each sprite,
but then again we don't have hardware that can render multiple cursors so we
might as well do with the hack.
2008-05-06 17:52:15 +09:30
Dave Airlie
e4ebfed178 xf86edid: fix typo in debug output 2008-05-06 16:47:18 +10:00
Peter Hutterer
b9c1a57e7a xfree86: switch between to SW cursors if more than 1 sprite is available.
Switches back to HW cursors when sprites other than the VCP are removed.
The current state requires the cursor to change shape once before it updates
to SW / HW rendering (whatever is appropriate), e.g. by moving into a
different window. Until this is done, the cursor is invisible.
2008-05-06 14:51:23 +09:30
Peter Hutterer
3df88c17e3 xfree86: re-enable hardware cursor (for a single cursor)
This commit enables HW rendering for cursors again, but only for a single
cursor. Other cursors can be created, however they will not be visible.
2008-05-06 11:50:20 +09:30
Jeremy Huddleston
6acc2acd0d Rootless: mi doesn't let us resize root, so we need to do it ourselves...
(cherry picked from commit c1ec36e28c)
2008-05-05 15:34:10 -07:00
Keith Packard
efa65a0317 Rework composite overlay window code to fix several resource management bugs.
The composite overlay window code had several misunderstandings of the
workings of the X server, in particular error handling paths would often
double-free objects. Clean all of this up by using resource destruction as
the sole mechanism for freeing resource-based objects.
2008-05-04 21:54:27 -07:00
Keith Packard
6c1accce87 Empty the borderClip of manual redirect windows. (bug 15823)
Thanks to Owen Taylor for root-causing this one.

If a TreatAsTransparent window has any area in the borderClip, that will be
added to the totalClip region for use by other windows. That's wrong.
Instead, simply empty the borderClip for TreatAsTransparent windows right up
front.
2008-05-04 21:54:22 -07:00