Commit Graph

3107 Commits

Author SHA1 Message Date
Christopher James Halse Rogers d17a9fb841 Consolidate all the PATH_MAX handling into misc.h
Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Christopher James Halse Rogers <christopher.halse.rogers@canonical.com>
2011-03-14 13:42:55 -04:00
Erkki Seppälä a19771e433 xfree86/common: Remove a configScreen leak when conf_screen is NULL
configScreen used a dynamically allocated buffer for XF86ConfScreenRec
when conf_screen argument was NULL. This pointer was never stored
anywhere, nor was it released, so this patch makes the function use
automatically allocated storage in that situation.

[ajax: minor grammar fix]
Reviewed-by: Adam Jackson <ajax@redhat.com>
Reviewed-by: Rami Ylimäki <rami.ylimaki@vincit.fi>
Signed-off-by: Erkki Seppälä <erkki.seppala@vincit.fi>
2011-03-08 13:34:33 -05:00
Adam Jackson 1564c82417 dix: Remove usage_hint from pixmaps, store it in ->drawable.class
The class field was unused for pixmaps, and we don't have enough classes
to justify a whole uint32 anyway.

Reviewed-by: Soren Sandmann <ssp@redhat.com>
Signed-off-by: Adam Jackson <ajax@redhat.com>
2011-03-08 13:16:50 -05:00
Adam Jackson d8caa78200 vbe: Fix malloc size bug
v2: Slightly more obvious sizing math.

==14882== Invalid write of size 2
==14882==    at 0x6750267: VBEGetVBEInfo (vbe.c:400)
==14882==    by 0x6142064: ??? (in /usr/lib64/xorg/modules/drivers/vesa_drv.so)
==14882==    by 0x471895: InitOutput (xf86Init.c:519)
==14882==    by 0x422778: main (main.c:205)
==14882==  Address 0x4f32fa8 is 72 bytes inside a block of size 73 alloc'd
==14882==    at 0x4A0640D: malloc (vg_replace_malloc.c:236)
==14882==    by 0x675024B: VBEGetVBEInfo (vbe.c:398)
==14882==    by 0x6142064: ??? (in /usr/lib64/xorg/modules/drivers/vesa_drv.so)
==14882==    by 0x471895: InitOutput (xf86Init.c:519)
==14882==    by 0x422778: main (main.c:205)

Reviewed-by: Mark Kettenis <kettenis@openbsd.org>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Signed-off-by: Adam Jackson <ajax@redhat.com>
2011-03-04 16:11:03 -05:00
Keith Packard 628d16a92a loader: Don't distribute sdksyms.c and make it depend on the config
sdksyms.c is constructed by processing header files with the C
preprocessor. Its contents will vary depending on the precise
configuration options, and so must depend on the config header
files.

We have one header file which is always changed when any config option
is modified called do-not-use-config.h (which may want a different
name at some point), so make sdksyms.c depend on that file.

Also, we don't want to ship this file; it always needs to be
built. So, include it in the nodist_libloader_la_SOURCES list to
prevent it from being added to the tarball.

Signed-off-by: Keith Packard <keithp@keithp.com>
Reviewed-by: Dan Nicholson <dbn.lists@gmail.com>
2011-03-03 21:54:25 -08:00
Keith Packard 6c90e839d9 Merge remote branch 'whot/for-keith' 2011-03-03 14:41:44 -08:00
Keith Packard 8e4c3ce55b Merge remote branch 'rjy/clientids' 2011-03-03 13:42:07 -08:00
Peter Hutterer c2207d11f2 Merge branch 'next' into for-keith
Conflicts:
	dix/devices.c

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2011-02-28 11:26:09 +10:00
Matthieu Herrb 00779932de Don't clobber input device options from xorg.conf
Since commit b8d9c5ff removed commonOptions, we now
need to append the "Core{Keyboard,Pointer}" options to
the existing list.

Fixes passing options to devices confirured in xorg.conf
on systems where autoaddevices is false.

Signed-off-by: Matthieu Herrb <matthieu.herrb@laas.fr>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2011-02-28 09:48:44 +10:00
Dan Nicholson 61ce915bf7 xfree86: Allow sdksyms.dep to be included portably
Non-GNU makes don't deal with the sinclude or -include variants that
allow Makefile stubs to be created and then included during the build.
Instead, create an empty file at the end of configure so that the
regular include statement can be included. This is how automake handles
automatic source dependencies.

In order to trick automake into not processing the include statement, a
variable is used.

Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
Tested-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2011-02-25 06:30:45 -08:00
Keith Packard 6178959e3d xfree86: Bump video ABI to 10.0
RandR 1.4 revert changed things

Signed-off-by: Keith Packard <keithp@keithp.com>
2011-02-24 19:42:02 -08:00
Keith Packard 8386159578 Merge remote branch 'kibi/master' 2011-02-24 18:59:07 -08:00
Alexandr Shadchin a1cc0e52b0 Removing unused code
In OpenBSD removed support PCCONS in 2002 year
http://marc.info/?l=openbsd-cvs&m=102435816424294&w=2

Signed-off-by: Alexandr Shadchin <Alexandr.Shadchin@gmail.com>
Reviewed-by: Matthieu Herrb <matthieu.herrb@laas.fr>
Signed-off-by: Keith Packard <keithp@keithp.com>
2011-02-24 18:56:25 -08:00
Keith Packard 365ad68fb9 Merge remote branch 'ajax/for-keithp' 2011-02-24 18:49:40 -08:00
Keith Packard b833f9b924 Revert "Replace huge argument list in xf86CrtcSetModeTransform with struct"
This reverts commit 8b35118c03.
2011-02-23 11:18:35 -08:00
Keith Packard a91d33917b Revert "randr: Add sprite position transforms"
This reverts commit 66294afcab.
2011-02-23 11:18:12 -08:00
Keith Packard 3d4ee25a1e Revert "randr: Implement RRSetCrtcConfigs"
This reverts commit d94a035ea9.
2011-02-23 11:18:08 -08:00
Keith Packard 8b0e651f7d Revert "hw/xfree86/modes: Add optional driver API for RRSetCrtcConfigs"
This reverts commit 86c489c319.
2011-02-23 11:18:05 -08:00
Keith Packard 9e8c20b0d4 Revert "randr: Add per-crtc pixmaps"
This reverts commit 82612045e1.
2011-02-23 11:17:42 -08:00
Keith Packard 793a242c89 Revert "DIX is responsible for ref counting scanout pixmaps."
This reverts commit 96b4d4787b.
2011-02-23 11:17:33 -08:00
Keith Packard 7b7cd3f121 Revert "Set sprite transforms from RRSetCrtcConfigs"
This reverts commit a88d70fb20.
2011-02-23 11:17:29 -08:00
Keith Packard fd9331f6eb Revert "Separate out screen size and screen pixmap sizes in RRScreenSizeSet"
This reverts commit 752c368421.
2011-02-23 11:17:24 -08:00
Adam Jackson dc498b433f xfree86: If the driver found modes on an output, don't add more
Inferring modes from sync ranges is only valid if the monitor says it's
valid.  If the monitor says it's valid, then we'll have already added
those modes during EDID block parse.  If it doesn't, then we should
believe it.

If there's no EDID for an output, but sync ranges from the config, we'll
still add default modes as normal.

Reviewed-by: Alex Deucher <alexdeucher@gmail.com>
Signed-off-by: Adam Jackson <ajax@redhat.com>
2011-02-23 13:39:22 -05:00
Cyril Brulebois 4102a00962 xfree86: Fix undefined reference to `XNFsprintf' on sparc.
Build failure on sparc:
| copying selected object files to avoid basename conflicts...
|   CCLD   Xorg
| ./.libs/libxorg.a(xf86sbusBus.o): In function `xf86SbusConfigureNewDev':
| […]/hw/xfree86/common/xf86sbusBus.c:712: undefined reference to `XNFsprintf'
| collect2: ld returned 1 exit status

Fix typo introduced in:
  3a9bb93dd1

Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Apologized-for-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Signed-off-by: Cyril Brulebois <kibi@debian.org>
2011-02-23 14:44:23 +01:00
Peter Hutterer 579ee8f5d8 Merge branch 'mi-cleanup' into next 2011-02-23 08:44:42 +10:00
Peter Hutterer d270f12a3e xfree86: update GetMaster check for the VCP.
Same result, but now also triggers on slave keyboards that send pointer
events.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Benjamin Tissoires <tissoire@cena.fr>
2011-02-22 14:35:45 +10:00
Peter Hutterer e48bf3b640 xfree86: replace two inputInfo.pointer uses with device loops.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Benjamin Tissoires <tissoire@cena.fr>
2011-02-22 14:35:44 +10:00
Keith Packard 816d67de2b Merge remote branch 'whot/for-keith' 2011-02-18 12:20:26 -08:00
Justin Dou a73c28f0bd Replace malloc with calloc to initialize the buffers[] as NULL in do_get_buffers function
The calling for allocate_or_reuse_buffer may fail due to some reason, e.g. out of memory.
If the buffers[] were not initialized to be NULL, the following err_out may try to access an illegal memory, which will cause X crash afterward.

Reviewed-by: Kristian Høgsberg <krh@bitplanet.net>
Signed-off-by: Justin Dou <Justin.Dou@intel.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
2011-02-18 12:16:15 -08:00
Keith Packard 0bc9b15a62 Merge remote branch 'ajax/for-keithp' 2011-02-18 12:04:41 -08:00
Simon Thum 38ffeec0c8 xfree86: allow to check for options without warnings in the log
This allows set_percent_option in synaptics to work as described,
and should generally enable to check option syntax without log spam.

Signed-off-by: Simon Thum <simon.thum@gmx.de>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2011-02-17 10:14:51 +10:00
Simon Thum 2fbccc881b fix percent options parsing
Signed-off-by: Simon Thum <simon.thum@gmx.de>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2011-02-17 10:14:32 +10:00
Peter Hutterer 3bbb70a1a7 xfree86: fix up an out-of-date comment.
InitInput simply initialises all input devices now.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Keith Packard <keithp@keithp.com>
2011-02-16 08:17:25 +10:00
Adam Jackson 994b7b3dc9 xfree86: warning fix
Did you know that anonymous enums with function scope will not only
override the enum values from global scope, but will be treated as
entirely different types?  C's type system just rules.

xf86Crtc.c: In function 'handle_detailed_monrec':
xf86Crtc.c:1555:33: warning: comparison between 'enum det_monrec_source' and 'enum <anonymous>'
xf86Crtc.c:1562:33: warning: comparison between 'enum det_monrec_source' and 'enum <anonymous>'

Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Julien Cristau <jcristau@debian.org>
Signed-off-by: Adam Jackson <ajax@redhat.com>
2011-02-08 12:41:04 -05:00
Adam Jackson ae16c5796f fbdevhw: Remove the non-sysfs hack for mapping from PCI to fbdev
It's broken for devices with BARs above 4G, and the sysfs method should
work everywhere anyway.  As a pleasant side effect, this fixes some
warnings:

fbdevhw.c: In function 'fbdev_open_pci':
fbdevhw.c:333:4: warning: cast from pointer to integer of different size
fbdevhw.c:334:4: warning: cast from pointer to integer of different size
fbdevhw.c:336:4: warning: cast from pointer to integer of different size
fbdevhw.c:337:4: warning: cast from pointer to integer of different size

Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Julien Cristau <jcristau@debian.org>
Signed-off-by: Adam Jackson <ajax@redhat.com>
2011-02-08 12:40:55 -05:00
Adam Jackson f1b7c9cead int10: warning fix
helper_exec.c: In function 'pciCfg1in':
helper_exec.c:507:4: warning: passing argument 2 of 'pci_device_cfg_read_u32' from incompatible pointer type
/usr/include/pciaccess.h:153:5: note: expected 'uint32_t *' but argument is of type 'CARD32 *'

Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Julien Cristau <jcristau@debian.org>
Signed-off-by: Adam Jackson <ajax@redhat.com>
2011-02-08 12:40:49 -05:00
Adam Jackson be186586e5 xf86vidmode: warning fix
xf86VidMode.c: In function 'VidModeGetMonitorValue':
xf86VidMode.c:637:19: warning: 'ret.i' may be used uninitialized in this function

Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Julien Cristau <jcristau@debian.org>
Signed-off-by: Adam Jackson <ajax@redhat.com>
2011-02-08 12:40:14 -05:00
Pauli Nieminen 5d020c3135 xf86/xv: Only register PostValidateTree hook when there is work to do
If none of Xv ports were affected by window tree modifications we don't
want scan the port list. To avoid useless scanning of port list
PostValidateTree hook is only registered when ClipNotify was called for
any port.

Signed-off-by: Pauli Nieminen <ext-pauli.nieminen@nokia.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@nokia.com>
2011-02-03 14:38:42 +02:00
Pauli Nieminen ddf32df5cc xf86/xv: Use PostValidateTree to do reput
ValidateTree calls first ClipNotify and later might call
WindowExposures. To avoid useless double reput ClipNotify delays reput
to WindowExposures or PostValidateTree.

PostValidatTree checks all ports if there is clip changes. On clip
changes reput is done to move or scale the overlay.

Signed-off-by: Pauli Nieminen <ext-pauli.nieminen@nokia.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@nokia.com>
2011-02-03 14:38:36 +02:00
Pauli Nieminen 5678a41f6b xf86/xv: Fill color key on expose
If window gets exposed but clipboxes doesn't change drivers would avoid
color key fill. This makes XResizeWindo&co to lose colorkey if
background is painted.

To help drivers to avoid filling colorkey for each put server can
provide helper function if there is exposed areas. Server can subtract
exposed areas from filled region.

As a side effect we can avoid useless color key fills if window only
moves in screen without background fills.

v3:
* Change tracking to filled area to account for client initiated clip
  changes
* Make overlaid XvPutImage behavior like textured XvPutImage or PutImage
* Make region dynamically allocated only when required.

v4:
* Simplify new driver interface to reduce duplicate code

Signed-off-by: Pauli Nieminen <ext-pauli.nieminen@nokia.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@nokia.com>
2011-02-03 14:38:10 +02:00
Pauli Nieminen 9b048ca420 xf86/xv: Remove unused variable from XvPortRecPrivate
Signed-off-by: Pauli Nieminen <ext-pauli.nieminen@nokia.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@nokia.com>
2011-02-03 14:38:04 +02:00
Pauli Nieminen 4f8f803280 xf86/xv: Remove unused GC pointers
Signed-off-by: Pauli Nieminen <ext-pauli.nieminen@nokia.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@nokia.com>
2011-02-03 14:37:56 +02:00
Pauli Nieminen e012f2312b xf86/xv: Remove copy paste code.
xf86XVFillKeyHelperDrawable can be used to implement
xf86XVFillKeyHelper.

V2:
* Remove RegionTranslate that clobbered parameter region.

Signed-off-by: Pauli Nieminen <ext-pauli.nieminen@nokia.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@nokia.com>
2011-02-03 14:36:00 +02:00
Keith Packard ea1ffd3e60 Merge remote branch 'whot/for-keith' 2011-02-02 15:19:55 -08:00
Evan Broder 12b0f7df2c xfree86/modes: Be sure to only use new EDID for physical output dimensions
The EDID processing regards physical dimensions of 0mm x 0mm as
invalid. Previously the old values for height and width would be
preserved if none of the physical dimension specifications in the new
EDID were considered valid.

This will come up in particular if first a monitor is connected to an
output, and then a projector is connected. Since projectors generally
report physical dimensions of 0mm x 0mm, this would result in the
projector claiming to have the physical dimensions of the monitor.

Signed-off-by: Evan Broder <ebroder@mokafive.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
2011-02-02 14:58:45 -08:00
Keith Packard 3a91c2d21c Merge remote branch 'dbn/build-fixes' 2011-02-02 14:37:00 -08:00
Ville Syrjala 53602c3621 xfree86/dga: Remove DGAIsDgaEvent()
DGAIsDgaEvent() is not used anymore.

Signed-off-by: Ville Syrjala <syrjala@sci.fi>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
2011-01-27 14:22:03 +10:00
Ville Syrjala 2081728b74 xfree86/dga: Only send DGA events for master devices
Signed-off-by: Ville Syrjala <syrjala@sci.fi>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
2011-01-27 14:22:03 +10:00
Ville Syrjala 9f09b62e59 xfree86/dga: Remove useless ifdefs
Move some variables to the scope where they are used.

Signed-off-by: Ville Syrjala <syrjala@sci.fi>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
2011-01-27 14:22:03 +10:00
Ville Syrjala 5c941c04ca xfree86/dga: DGAProcessKeyboardEvent() forgot ET_Internal
Signed-off-by: Ville Syrjala <syrjala@sci.fi>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
2011-01-27 14:22:02 +10:00