summaryrefslogtreecommitdiff
path: root/miext
AgeCommit message (Collapse)AuthorFilesLines
2010-02-17os: Prevent core dump from being truncated.Rami Ylimaki2-6/+6
The problem fixed by this patch can be reproduced on Linux with the following steps. - Access NULL pointer intentionally in ProcessOtherEvent on key press. - Instead of saving core dump to a file, write it into a pipe. echo "|/usr/sbin/my-core-dumper" > /proc/sys/kernel/core_pattern - Dump the core by pressing a key. While the core is being dumped into the pipe, the smart schedule timer will cause a pending SIGALRM. Linux kernel stops writing data to the pipe when there are pending signals. This causes the core dump to be truncated. On my system I'm expecting a 6 MB dump but the size will be 60 kB instead. The problem is solved if we block the SIGALRM caused by expired smart schedule timer. I haven't been able to reproduce this problem in the following cases. - Save core dump to a file instead of a pipe. - kill -SEGV `pidof Xorg` - Press a key to dump core while gdb is attached to Xorg. - Give option -dumbSched to Xorg. Also note that the fix works only when NoTrapSignals has the default value FALSE. The problem can still be reproduced if error signals aren't trapped. In addition to pending SIGALRM, there is a similar problem with pending SIGIO from the keyboard driver during core dump. Signed-off-by: Rami Ylimaki <ext-rami.ylimaki@nokia.com> Reviewed-by: Keith Packard <keithp@keithp.com> Signed-off-by: Keith Packard <keithp@keithp.com>
2009-12-08Miscellaneous compilation warning fixesJeremy Huddleston1-1/+1
main.c:134: warning: no previous prototype for 'dix_main' rootlessScreen.c: In function 'RootlessMarkOverlappedWindows': rootlessScreen.c:434: warning: function declaration isn't a prototype backtrace.c:51: warning: format '%lx' expects type 'long unsigned int', but argument 5 has type 'int' backtrace.c:54: warning: format '%lx' expects type 'long unsigned int', but argument 5 has type 'int' set.c: In function 'RecordSetMemoryRequirements': set.c:413: warning: old-style function definition set.c: In function 'RecordCreateSet': set.c:425: warning: old-style function definition stub.c: In function ‘main’: stub.c:236: warning: ISO C90 forbids mixed declarations and code Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org>
2009-10-13Rootless: src drawable window can now be NULLJeremy Huddleston1-2/+2
Fix a possible crash when pSrc->pDrawable is NULL. Signed-off-by: Colin Harrison <colin.harrison@virgin.net> Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org> Signed-off-by: Keith Packard <keithp@keithp.com>
2009-10-13Rootless: Abstract some of the Xplugin specific stuff which has crept into ↵Jeremy Huddleston5-68/+26
rootlessWindow.c The rootless extension now directly calls some Xplugin functions, and relies on types defined in Xplugin.h, which isn't very abstracted :-) This patch is a start at abstracting some of the Xplugin specific stuff which has crept into rootlessWindow.c. This has been done in a pretty mindless fashion, without much thought as to if the additions to the generic rootless interface are the correct ones There is some confusion as to if RootlesscolormapCallback() returns a Bool or xp_error_enum value (not so abstact), but I have no way of checking, of finding out if Xplugin actually checks the result :-) Based on patches from Colin Harrison, Jon Turney and Yaakov Selkowitz Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk> Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org> Signed-off-by: Keith Packard <keithp@keithp.com>
2009-09-27Rootless: Correct border rendering on parent-relative windowsJeremy Huddleston1-0/+26
Resurected code from the punted RootlessPaintBackground/Border and added it conditionally to miPaintWindow (cherry picked from commit cf2e3312cff3f341e9edba8c321a4ca7ffd8748e)
2009-07-29Cygwin/X: Only try to build rootless extension if multiwindow extwm mode is ↵Jon TURNEY1-1/+1
being built Rootless extension still needs a bit more work to build successfully for Cygwin/X
2009-07-24Damage: Add devPrivates to DamageRecAaron Plattner2-0/+4
Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2009-07-24Damage: Add wrappable hooks for damage create, destroy, register, & unregister.Aaron Plattner3-2/+83
Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
2009-06-29Cygwin/X: Fix multiwindow extwm mode to build againJon TURNEY1-0/+3
Build and link with rootless extension Update Xwin code for removal of RootlessAccelInit() Fix Xwin code which now has a collision with the type name EventType Based on patches from Colin Harrison, Jon Turney and Yaakov Selkowitz Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
2009-06-06Rootless: Use serverClient instead of NullClientJeremy Huddleston1-1/+1
This seems to stop the crash when moving windows. (cherry picked from commit fcd857c8e295ac7a2b0e58d49dc71251ed9d1266)
2009-06-06Rootless: Despite its name, we still want to allow rootless to mess with the ↵Jeremy Huddleston1-53/+0
root window This fixes the bug whereby we weren't drawing the contents of the root window since RootlessPaintWindowBackground got nuked. (cherry picked from commit bb0e208787739fbed2a0c8d1af6b6504319fdf88)
2009-06-03s/MIN/min/, s/MAX/max/ (#2968)Adam Jackson3-16/+11
2009-05-29Rootless: Use miPaintWindow since PaintWindowBackground is deadJeremy Huddleston1-2/+1
(cherry picked from commit 4975c087257b52189a5c21d93d121f183e60e4c8)
2009-04-10XQuartz: Update window levels when changing rootless stateJeremy Huddleston2-0/+2
(cherry picked from commit 1359ded5bfc14a80fb998b01a54ecacb96c4ff88)
2009-04-10XQuartz: Properly set the window level for the root windowJeremy Huddleston1-8/+0
(cherry picked from commit bdf9286d1cbfeaaf8eaf03d28091e91ee587ee25)
2009-01-28[shadow] Store the closure in the bufferSøren Sandmann Pedersen1-1/+1
2009-01-22Remove a bunch of useless casts.Adam Jackson4-5/+5
We've had void * for twenty years now people let's try to act like we know how it works.
2008-12-21XQuartz: Get rid of white rectangle bugJeremy Huddleston1-2/+5
(cherry picked from commit 3269959033ed0c675a3a906666454df34086896a)
2008-12-21rootless: Make expose_1 staticJeremy Huddleston1-1/+1
(cherry picked from commit 60c8d2697036a125ca5381df8e2eaedabad4d242)
2008-12-10Add dependency tracking to sdksyms.c and export composite wrapper.Paulo Cesar Pereira de Andrade1-8/+8
Thanks to David Miller for noticing a make problem with sdksyms.c not being regenerated when sdksyms.sh is updated. This is not yet the best solution; automake generates dependency for sdksyms.o, but the build really should also regenerate sdksyms.c when sdksyms.o needs to be regenerated. Export the symbols in miext/cw/cw.h. These symbols are in libxaa, and at least the nvidia driver uses them. Maybe cw.h should be installed in the sdk.
2008-12-03Rework symbol visibility for easier maintenancePaulo Cesar Pereira de Andrade10-75/+75
Save in a few special cases, _X_EXPORT should not be used in C source files. Instead, it should be used in headers, and the proper C source include that header. Some special cases are symbols that need to be shared between modules, but not expected to be used by external drivers, and symbols that are accessible via LoaderSymbol/dlopen. This patch also adds conditionally some new sdk header files, depending on extensions enabled. These files were added to match pattern for other extensions/modules, that is, have the headers "deciding" symbol visibility in the sdk. These headers are: o Xext/panoramiXsrv.h, Xext/panoramiX.h o fbpict.h (unconditionally) o vidmodeproc.h o mioverlay.h (unconditionally, used only by xaa) o xfixes.h (unconditionally, symbols required by dri2) LoaderSymbol and similar functions now don't have different prototypes, in loaderProcs.h and xf86Module.h, so that both headers can be included, without the need of defining IN_LOADER. xf86NewInputDevice() device prototype readded to xf86Xinput.h, but not exported (and with a comment about it).
2008-12-02Add visibility flags to XSERVER_CFLAGS.Paulo Cesar Pereira de Andrade1-1/+1
This is done to actually change DIX_CFLAGS, as not all "modules" use XORG_CFLAGS. Also export the symbols that are required by other modules after the change.
2008-11-30Remove declarations of symbols that are never defined.Paulo Cesar Pereira de Andrade1-3/+0
These symbols were removed from the X Server, or never declared. One symbol that may need special attention is XkbBuildCoreState(), that doesn't have a prototype anywhere, but is called from xkb/xkbEvents.c:XkbFilterEvents(), and also used by the macros XkbStateFieldFromRec() and XkbGrabStateFromRec() defined in include/xkbstr.h. fb/wfbrename.h also may need some cleanup, as it makes several "renames" of non existing symbols.
2008-11-29Export symbols defined in the sdk.Paulo Cesar Pereira de Andrade7-22/+25
This is the biggest "visibility" patch. Instead of doing a "export" symbol on demand, export everything in the sdk, so that if some module fails due to an unresolved symbol, it is because it is using a symbol not in the sdk. Most exported symbols shouldn't really be made visible, neither advertised in the sdk, as they are only used by a single shared object. Symbols in the sdk (or referenced in sdk macros), but not defined anywhere include: XkbBuildCoreState() XkbInitialMap XkbXIUnsupported XkbCheckActionVMods() XkbSendCompatNotify() XkbDDXFakePointerButton() XkbDDXApplyConfig() _XkbStrCaseCmp() _XkbErrMessages[] _XkbErrCode _XkbErrLocation _XkbErrData XkbAccessXDetailText() XkbNKNDetailMaskText() XkbLookupGroupAndLevel() XkbInitAtoms() XkbGetOrderedDrawables() XkbFreeOrderedDrawables() XkbConvertXkbComponents() XkbWriteXKBSemantics() XkbWriteXKBLayout() XkbWriteXKBKeymap() XkbWriteXKBFile() XkbWriteCFile() XkbWriteXKMFile() XkbWriteToServer() XkbMergeFile() XkmFindTOCEntry() XkmReadFileSection() XkmReadFileSectionName() InitExtInput() xf86CheckButton() xf86SwitchCoreDevice() RamDacSetGamma() RamDacRestoreDACValues() xf86Bpp xf86ConfigPix24 xf86MouseCflags[] xf86SupportedMouseTypes[] xf86NumMouseTypes xf86ChangeBusIndex() xf86EntityEnter() xf86EntityLeave() xf86WrapperInit() xf86RingBell() xf86findOptionBoolean() xf86debugListOptions() LoadSubModuleLocal() LoaderSymbolLocal() getInt10Rec() xf86CurrentScreen xf86ReallocatePciResources() xf86NewSerialNumber() xf86RandRSetInitialMode() fbCompositeSolidMask_nx1xn fbCompositeSolidMask_nx8888x0565C fbCompositeSolidMask_nx8888x8888C fbCompositeSolidMask_nx8x0565 fbCompositeSolidMask_nx8x0888 fbCompositeSolidMask_nx8x8888 fbCompositeSrc_0565x0565 fbCompositeSrc_8888x0565 fbCompositeSrc_8888x0888 fbCompositeSrc_8888x8888 fbCompositeSrcAdd_1000x1000 fbCompositeSrcAdd_8000x8000 fbCompositeSrcAdd_8888x8888 fbGeneration fbIn fbOver fbOver24 fbOverlayGeneration fbRasterizeEdges fbRestoreAreas fbSaveAreas composeFunctions VBEBuildVbeModeList() VBECalcVbeModeIndex() TIramdac3030CalculateMNPForClock() shadowBufPtr shadowFindBuf() miRRGetScreenInfo() RRSetScreenConfig() RRModePruneUnused() PixmanImageFromPicture() extern int miPointerGetMotionEvents() miClipPicture() miRasterizeTriangle() fbPush1toN() fbInitializeBackingStore() ddxBeforeReset() SetupSprite() InitSprite() DGADeliverEvent() SPECIAL CASES o defined as _X_INTERNAL xf86NewInputDevice() o defined as static fbGCPrivateKey fbOverlayScreenPrivateKey fbScreenPrivateKey fbWinPrivateKey o defined in libXfont.so, but declared in xorg/dixfont.h GetGlyphs() QueryGlyphExtents() QueryTextExtents() ParseGlyphCachingMode() InitGlyphCaching() SetGlyphCachingMode()
2008-10-31Rootless: LP64 related casting fixes from Bob MurphyJeremy Huddleston2-4/+6
(cherry picked from commit 40441c4e31167932721a79d7ca572caaa1d36e72)
2008-10-31Rootless: Force initialization of static variable before use.Jeremy Huddleston1-8/+1
(cherry picked from commit cece29317269385aa7a0d3047e6f90e6a17d01eb)
2008-10-23miext/rootless: Silence some warnings by using proper C prototypes.Jeremy Huddleston2-38/+65
(cherry picked from commit 050e46e09efcc7e6f090fa4a749e9076c972b760)
2008-10-23miext/rootless: Fix the usage of DeleteProperty so that this builds again.George Peter Staplin1-7/+17
(cherry picked from commit 3de250e28a9a86bcae4464a15c2025805877ce1e)
2008-10-23Rootless: Properly typed expose_1Jeremy Huddleston1-2/+1
(cherry picked from commit 78e874fe17174ac8f61586573edaf7f16ece7b21)
2008-10-23Fix previous cherry pick for API changesAdam Jackson1-1/+1
2008-10-23Wrap AddTraps in exa and damage.Keith Packard2-0/+54
This fine (and unused) function wasn't ever wrapped which made it not work under exa. (cherry picked from commit 06e7e1d0486e8c516a9b3219a2c86026f88825fc)
2008-10-08XQuartz: Some motion made towards supporting fullscreen.Jeremy Huddleston3-1/+156
(cherry picked from commit 99be3d68b64059caada739a373e5e01844c776e0)
2008-10-02Unifdef ISCAdam Jackson3-0/+0
2008-09-12XQuartz: 256 color supportJeremy Huddleston2-1/+3
(cherry picked from commit 8dd6d5c825d457f26b41b79d02d57ed4a5ecf1f5)
2008-09-12XQuartz: Remove decls of crashtracer strings that we don't use anymore in hereJeremy Huddleston1-7/+0
(cherry picked from commit 4a653c6bfd270f2960a8c7e726e7628cfc3c9051)
2008-09-12XQuartz: Fixed a crash in RootlessNativeWindowMovedJeremy Huddleston1-23/+2
(cherry picked from commit a16048cec08e173ce42a78a77704f5fdfcb4480f)
2008-08-31damage: choose less ambiguous function namesMaarten Maathuis2-39/+39
2008-08-29XQuartz: Added debugging output to the crash log to help track down two ↵Jeremy Huddleston1-2/+31
crashes, since people don't often report their system.log spew. (cherry picked from commit aaf0f71db197526b6b866cc1b39fbdfe051879ef)
2008-08-30damage: initial attempt at a damage marker mechanismMaarten Maathuis3-12/+107
- This should allow drivers to recieve post submission events for X<->opengl synchronisation. - Lacking a testcase, i'm open to suggestion how to do it better. - The idea is: - driver recieves event - driver creates personal identification and inserts marker into X fifo. - when something wants to use an X pixmap, it checks if something is pending. - If so, it synchronizes the 2nd fifo using the initial identification. - Driver is not required to use interrupt based systems (price too high). - Lower latency is ofcource better. - If this is somehow unusable for you, then come up with improvements. - For that reason i wouldn't consider the api fixed for the moment.
2008-08-29damage: DamageReportRawRegion should set pDamage->damageMaarten Maathuis1-0/+2
- I found no evidence in the protocol, that it should be differently from all the other modes. - It seems to have been like this from day 1. - If anyone has evidence to the contrary, please enlighten me.
2008-08-29damage: internal functions start with a non-capital letterMaarten Maathuis1-3/+3
2008-08-29{damage,exa}: sanitise damageMaarten Maathuis2-32/+58
- Redo damage naming for more consistency. - Call post submission functions only where appropriate. - EXA can now live without it's odd damage workarounds.
2008-08-28Prepare for array-index based devPrivates.Tomas Carnecky4-13/+26
TODO: static indices can be made just an int; some indices can be combined.
2008-07-24Shape extension is built-in and mandatory.Adam Jackson5-20/+0
2008-05-05Rootless: mi doesn't let us resize root, so we need to do it ourselves...Jeremy Huddleston1-25/+46
(cherry picked from commit c1ec36e28cff857664090cc8792db1ae93b783fa)
2008-04-21Make rootless use dixLookupClient rather than deprecated LookupClient.Jeremy Huddleston1-25/+31
(cherry picked from commit 582b5b01f9697b66489ea906a2ecb8bfc5915571)
2008-04-21Nuke a call to deprecated LookupClient, and hopefully prevent aBen Byer1-5/+1
null-pointer dereference, too! (cherry picked from commit 3d28e9f953709914e18807bc74c241333671cb30)
2008-04-19Rootless: Kill off rlAccelJeremy Huddleston11-1540/+0
2008-04-18random flailingBen Byer1-1/+1
(cherry picked from commit 7fb9b2dc615a3bd1a3c087438af7a8b88265cfaa)
2008-04-16XQuartz: Don't enable rootless accelerated functionality... crashy...Jeremy Huddleston3-10/+5
(cherry picked from commit cdb4c291d8c10c3a9ea59d8e79275a30d2ea82b4)