Report 1869 Actions
Problem Report Number |
1869 |
Submitter's Classification |
Test Suite problem |
State |
Resolved |
Resolution |
Rejected (REJ) |
Problem Resolution ID |
REJ.X.0556 |
Raised |
2002-07-11 08:00 |
Updated |
2003-03-13 08:00 |
Published |
null |
Product Standard |
Window System Application Interface V2 |
Certification Program |
The Open Brand certification program |
Test Suite |
VSW version 5.1.2 |
Test Identification |
Xlib7/XCreateColorMap 3,4,5,7 |
Problem Summary |
PG4W.00107 The tests fail for a pseudocolor visual with transparent overlay, but no fault in the test suite has been identified. |
Problem Text |
REASON:
There is an issue with transparent overlays and VSW test methods. When a colormap is created with 256 indexes available, one index is assigned as "transparent color", then there are only 255 remaining as read-write. It seems that VSW does not know exactly how this should be tested, as the number of index entries is not the expected. FAIL and UNRESOLVED results are given each time colormap management is tried against this visual. Note that same symtoms will happen in any platform which contain transparent color overlays.
Running glxinfo in EMXI, we get
visual x bf lv rg d st r g b a ax dp st accum buffs ms id dep cl sp sz l ci b ro sz sz sz sz bf th cl r g b a ns b ----------------------------------------------------------------- 0x20 8 pc . 8 . c . . . . . . . 24 8 . . . . . . 0x21 8 pc . 8 . c . . . . . . . . . . . . . . . 0x23 8 pc y 8 1 c . . . . . . . . . . . . . . . 0x24 8 pc . 8 1 c . . . . . . . . . . . . . . . 0x25 12 pc . 12 . b . . 12 . . . . 24 8 . . . . . . 0x26 12 pc . 12 . b . . 12 . . . . . . . . . . . . 0x27 12 pc . 12 . b y . 12 . . . . 24 8 . . . . . . 0x28 12 pc . 12 . b y . 12 . . . . . . . . . . . . 0x29 12 pc . 12 . c y y . . . . . 24 8 . . . . . . 0x2a 12 pc . 12 . c y y . . . . . . . . . . . . . 0x2b 12 tc . 16 . r y . 4 4 4 4 . 24 8 16 16 16 16 . . 0x2c 12 tc . 16 . r y . 4 4 4 4 . . . 16 16 16 16 . . 0x2d 12 tc . 16 . r y y 4 4 4 4 . 24 8 16 16 16 16 . . 0x2e 12 tc . 16 . r y y 4 4 4 4 . . . 16 16 16 16 . . 0x2f 15 tc . 16 . r y . 5 5 5 1 . 24 8 16 16 16 16 . . 0x30 15 tc . 16 . r y . 5 5 5 1 . . . 16 16 16 16 . . 0x31 15 tc . 16 . r y y 5 5 5 1 . 24 8 16 16 16 16 . . 0x32 15 tc . 16 . r y y 5 5 5 1 . . . 16 16 16 16 . . 0x33 24 tc . 32 . r y . 8 8 8 8 . 24 8 16 16 16 16 . . 0x34 24 tc . 32 . r y . 8 8 8 8 . . . 16 16 16 16 . . 0x35 24 tc . 32 . r . . 8 8 8 8 . 24 8 16 16 16 16 . . 0x36 24 tc . 32 . r . . 8 8 8 8 . . . 16 16 16 16 . . 0x37 24 tc . 36 . r y . 12 12 12 . . 24 8 16 16 16 16 . . 0x38 24 tc . 36 . r y . 12 12 12 . . . . 16 16 16 16 . . 0x39 24 tc . 36 . r . . 12 12 12 . . 24 8 16 16 16 16 . . 0x3a 24 tc . 36 . r . . 12 12 12 . . . . 16 16 16 16 . . ----------------------------------------------------------------- visual x bf lv rg d st r g b a ax dp st accum buffs ms id dep cl sp sz l ci b ro sz sz sz sz bf th cl r g b a ns b -----------------------------------------------------------------
Visual 0x23 has a transparency capability on color mapping. Observe the 4th column (x sp).
Here is the list of tests that so far are affected. The list includes the test sets, tests, purposes, and results.
Xlib3 ===== XMinCmapsOfScreen - 1 UNRESOLVED MinCmapsOfScreen - 1 UNRESOLVED
Xlib10 ====== XInstallColormap - 1,2 UNRESOLVED
Xlib7 ===== XAllocColorCells - 1,2,3 FAIL XCreateColormap - 3,4,5,7 FAIL XStoreNamedColor - 5 FAIL XCopyColormapAndFree - 1,2,3 UNRESOLVED XFreeColors - 4 UNRESOLVED XQueryColors - 1 UNRESOLVED XStoreColor - 1,2,4,5 UNRESOLVED XStoreColors - 1,2,5,6 UNRESOLVED XStoreNamedColor - 1,2,3,4,7,8 UNRESOLVED
If we exclude this visual and run the test suite, all the aforementioned tests have a PASS result.
Ideally we would like to obtain one single waiver, which we believe should be of the Agreed Test Suite Deficiency type, that covers all the color map tests, instead of one waiver for each one of the FAIL and UNRESOLVED results.
Sample test output for each of the cases listed above, in the order in which they appear in the above list, except for XCreateColormap, which was included in the previous section:
Xlib3:
520|160 1 00009847 1 1|VSW5TESTSUITE PURPOSE 1 520|160 1 00009847 1 2|Assertion XMinCmapsOfScreen-1.(B) 520|160 1 00009847 1 3|A call to XMinCmapsOfScreen returns the minimum number of 520|160 1 00009847 1 4|installed colourmaps supported by the screen screen. 520|160 1 00009847 1 5|Reason for omission: There is no known reliable test method for this assertion 520|160 1 00009847 1 6|METH: Obtain the minimum allowed number of installed colourmaps using XMinCmapsOfScreen. 520|160 1 00009847 1 7|METH: Call that number minm. 520|160 1 00009847 1 8|METH: Create minm colormaps for each visual, and collect them all into a set. 520|160 1 00009847 1 9|METH: For each possible subset of size minm, install all of the colormaps in that 520|160 1 00009847 1 10|METH: subset, and verify that they all stay installed. 520|160 1 00009847 1 11|REPORT: Unexpected error BadAlloc 520|160 1 00009847 1 12|REPORT: BadAlloc (insufficient resources for operation) 520|160 1 00009847 1 13|REPORT: Protocol request was X_CreateColormap 520|160 1 00009847 1 14|REPORT: Unexpected Xlib error 520|160 1 00009847 1 15|REPORT: Unexpected error BadColor 520|160 1 00009847 1 16|REPORT: BadColor (invalid Colormap parameter) 520|160 1 00009847 1 17|REPORT: Protocol request was X_InstallColormap 520|160 1 00009847 1 18|REPORT: Unexpected Xlib error 520|160 1 00009847 1 19|REPORT: colormap did not stay installed 520|160 1 00009847 1 20|REPORT: Unexpected error BadColor 520|160 1 00009847 1 21|REPORT: BadColor (invalid Colormap parameter) 520|160 1 00009847 1 22|REPORT: Protocol request was X_FreeColormap 520|160 1 00009847 1 23|REPORT: Unexpected Xlib error 220|160 1 2 19:23:08|UNRESOLVED
------------------------------------------------------------
520|214 1 00009962 1 1|VSW5TESTSUITE PURPOSE 1 520|214 1 00009962 1 2|Assertion MinCmapsOfScreen-1.(B) 520|214 1 00009962 1 3|A call to MinCmapsOfScreen returns the minimum number of 520|214 1 00009962 1 4|installed colourmaps supported by the screen screen. 520|214 1 00009962 1 5|Reason for omission: There is no known reliable test method for this assertion 520|214 1 00009962 1 6|METH: Obtain the minimum allowed number of installed colourmaps using MinCmapsOfScreen. 520|214 1 00009962 1 7|METH: Call that number minm. 520|214 1 00009962 1 8|METH: Create minm colormaps for each visual, and collect them all into a set. 520|214 1 00009962 1 9|METH: For each possible subset of size minm, install all of the colormaps in that 520|214 1 00009962 1 10|METH: subset, and verify that they all stay installed. 520|214 1 00009962 1 11|REPORT: Unexpected error BadAlloc 520|214 1 00009962 1 12|REPORT: BadAlloc (insufficient resources for operation) 520|214 1 00009962 1 13|REPORT: Protocol request was X_CreateColormap 520|214 1 00009962 1 14|REPORT: Unexpected Xlib error 520|214 1 00009962 1 15|REPORT: Unexpected error BadColor 520|214 1 00009962 1 16|REPORT: BadColor (invalid Colormap parameter) 520|214 1 00009962 1 17|REPORT: Protocol request was X_InstallColormap 520|214 1 00009962 1 18|REPORT: Unexpected Xlib error 520|214 1 00009962 1 19|REPORT: colormap did not stay installed 520|214 1 00009962 1 20|REPORT: Unexpected error BadColor 520|214 1 00009962 1 21|REPORT: BadColor (invalid Colormap parameter) 520|214 1 00009962 1 22|REPORT: Protocol request was X_FreeColormap 520|214 1 00009962 1 23|REPORT: Unexpected Xlib error 220|214 1 2 19:27:48|UNRESOLVED
Xlib10:
520|426 1 00010289 1 1|VSW5TESTSUITE PURPOSE 1 520|426 1 00010289 1 2|Assertion XInstallColormap-1.(A) 520|426 1 00010289 1 3|A call to XInstallColormap installs the specified colourmap 520|426 1 00010289 1 4|for its associated screen. 520|426 1 00010289 1 5|METH: For each visual type. 520|426 1 00010289 1 6|METH: Create colourmap. 520|426 1 00010289 1 7|METH: Install colourmap. 520|426 1 00010289 1 8|METH: Verify that new colourmap has been installed by listing the installed 520|426 1 00010289 1 9|METH: colourmaps. 520|426 1 00010289 1 10|REPORT: Unexpected error BadAlloc 520|426 1 00010289 1 11|REPORT: BadAlloc (insufficient resources for operation) 520|426 1 00010289 1 12|REPORT: Protocol request was X_CreateColormap 520|426 1 00010289 1 13|REPORT: Unexpected Xlib error 220|426 1 2 20:02:40|UNRESOLVED
520|426 2 00010289 1 1|VSW5TESTSUITE PURPOSE 2 520|426 2 00010289 1 2|Assertion XInstallColormap-2.(B) 520|426 2 00010289 1 3|All windows associated with the specified colourmap 520|426 2 00010289 1 4|immediately display with true colours. 520|426 2 00010289 1 5|Reason for omission: There is no known reliable test method for this assertion 520|426 2 00010289 1 6|METH: Report UNTESTED 520|426 2 00010289 1 7|REPORT: Unexpected error BadColor 520|426 2 00010289 1 8|REPORT: BadColor (invalid Colormap parameter) 520|426 2 00010289 1 9|REPORT: Protocol request was X_FreeColormap 520|426 2 00010289 1 10|REPORT: Unexpected Xlib error 220|426 2 2 20:02:40|UNRESOLVED
Xlib7:
520|284 1 00009897 1 1|VSW5TESTSUITE PURPOSE 1 520|284 1 00009897 1 2|Assertion XAllocColorCells-1.(C) 520|284 1 00009897 1 3|If any of the visual classes DirectColor, PseudoColor, or 520|284 1 00009897 1 4|GrayScale is supported: A call to XAllocColorCells allocates 520|284 1 00009897 1 5|npixels*2pow(nplanes) read/write colourmap entries whose 520|284 1 00009897 1 6|indices in the colourmap are obtained by ORing each pixel 520|284 1 00009897 1 7|value returned in the pixels_return argument with zero or 520|284 1 00009897 1 8|more of the planes returned in the plane_mask argument. 520|284 1 00009897 1 9|METH: For each visual class DirectColor, PseudoColor and GrayScale: 520|284 1 00009897 1 10|METH: Create a colormap. 520|284 1 00009897 1 11|METH: Allocate all colors and no planemasks with XAllocColorCells. 520|284 1 00009897 1 12|METH: Verify the correct number of cells have been allocated by initialising 520|284 1 00009897 1 13|METH: them with XStoreColors, and reading them with XQueryColors. 520|284 1 00009897 1 14|METH: Allocate planes and masks such that lg(colors) + planes = lg(colormap_size) 520|284 1 00009897 1 15|METH: Verify the correct number of cells have been allocated by initialising 520|284 1 00009897 1 16|METH: them with XStoreColors, and reading them with XQueryColors. 520|284 1 00009897 1 17|REPORT: XAllocColorCells failed to return non-zero 520|284 1 00009897 1 18|REPORT: allocating all 256 cells with visual class PseudoColor. 220|284 1 1 19:35:54|FAIL
520|284 2 00009897 1 1|VSW5TESTSUITE PURPOSE 2 520|284 2 00009897 1 2|Assertion XAllocColorCells-2.(C) 520|284 2 00009897 1 3|If any of the visual classes DirectColor, PseudoColor, or 520|284 2 00009897 1 4|GrayScale is supported: A call to XAllocColorCells returns 520|284 2 00009897 1 5|nplanes plane masks in the plane_mask_return argument and 520|284 2 00009897 1 6|npixels pixel values in the pixels_return argument such that 520|284 2 00009897 1 7|no plane mask has a bit set in common with any other plane 520|284 2 00009897 1 8|mask or with any of the pixels. 520|284 2 00009897 1 9|METH: For each supported visual with r/w colour cells: 520|284 2 00009897 1 10|METH: Create a colourmap with alloc set to AllocNone. 520|284 2 00009897 1 11|METH: Allocate planes and masks such that lg(colors) + planes = lg(colormap_size) 520|284 2 00009897 1 12|METH: Form the bitwise OR of all the pixels. 520|284 2 00009897 1 13|METH: For each planemask: 520|284 2 00009897 1 14|METH: Verify that the bitwise AND of every other planemask is 0. 520|284 2 00009897 1 15|METH: Verify that the bitwise AND of the planemask and the OR of the colours is 0. 520|284 2 00009897 1 16|REPORT: XAllocColorCells failed to return non-zero 520|284 2 00009897 1 17|REPORT: for visual class PseudoColor. 220|284 2 1 19:35:54|FAIL
520|284 3 00009897 1 1|VSW5TESTSUITE PURPOSE 3 520|284 3 00009897 1 2|Assertion XAllocColorCells-3.(A) 520|284 3 00009897 1 3|If either of the visual classes PseudoColor or GrayScale 520|284 3 00009897 1 4|are supported: When the visual type of the colormap argument 520|284 3 00009897 1 5|is PseudoColor or GrayScale, then a call to 520|284 3 00009897 1 6|XAllocColorCells sets exactly one bit in each plane mask in 520|284 3 00009897 1 7|plane_mask_return. 520|284 3 00009897 1 8|METH: For the visuals PseudoColor and GrayScale: 520|284 3 00009897 1 9|METH: Create a colourmap with alloc set to AllocNone. 520|284 3 00009897 1 10|METH: Allocate 1 color and all planemasks with XAllocColorCells. 520|284 3 00009897 1 11|METH: Verify that the number of bits set in each planemask is exactly 1. 520|284 3 00009897 1 12|REPORT: XAllocColorCells failed to return non-zero 520|284 3 00009897 1 13|REPORT: for visual class PseudoColor. 220|284 3 1 19:35:54|FAIL
--------------------------------------------------------------
520|297 5 00010140 1 1|VSW5TESTSUITE PURPOSE 5 520|297 5 00010140 1 2|Assertion XStoreNamedColor-5.(A) 520|297 5 00010140 1 3|When an attempt to store into a read-only or an unallocated 520|297 5 00010140 1 4|colormap entry is made, then a BadAccess error occurs. 520|297 5 00010140 1 5|METH: For each visual class DirectColor, PseudoColor and GrayScale: 520|297 5 00010140 1 6|METH: Create a colormap (r/o) with alloc set to AllocNone. 520|297 5 00010140 1 7|METH: Store the color XT_GOOD_COLORNAME with XStoreNamedColor 520|297 5 00010140 1 8|METH: Verify that a BadAccess error is generated. 520|297 5 00010140 1 9|METH: Create a new client with XOpenDisplay. 520|297 5 00010140 1 10|METH: Allocate a full red readonly cell for the new client with XAllocColor. 520|297 5 00010140 1 11|METH: Store the color XT_GOOD_COLORNAME with XStoreNamedColor. 520|297 5 00010140 1 12|METH: Verify that a BadAccess error occurred. 520|297 5 00010140 1 13|METH: Allocate another readonly cell with XAllocColor. 520|297 5 00010140 1 14|METH: Store the color XT_GOOD_COLORNAME with XStoreNamedColor. 520|297 5 00010140 1 15|METH: Verify that a BadAccess error occurred. 520|297 5 00010140 1 16|REPORT: Got Success, Expecting BadAccess 220|297 5 1 19:38:33|FAIL
--------------------------------------------------------------
520|287 1 00010121 1 1|VSW5TESTSUITE PURPOSE 1 520|287 1 00010121 1 2|Assertion XCopyColormapAndFree-1.(A) 520|287 1 00010121 1 3|A call to XCopyColormapAndFree creates a colourmap of the 520|287 1 00010121 1 4|same visual type and for the same screen as the colormap 520|287 1 00010121 1 5|argument and returns the new colourmap ID. 520|287 1 00010121 1 6|METH: For each supported visual: 520|287 1 00010121 1 7|METH: Create a colourmap using XCreateColormap with alloc set to AllocNone. 520|287 1 00010121 1 8|METH: Allocate one r/o cell, get it's actual rgb values 520|287 1 00010121 1 9|METH: Allocate the rest of the cmap as r/w and store known values, read them back. 520|287 1 00010121 1 10|METH: Create a new colourmap with XCopyColormapAndFree. 520|287 1 00010121 1 11|METH: Check that it contains the values we know we had in the original. 520|287 1 00010121 1 12|METH: Verify that no error occurred. 520|287 1 00010121 1 13|METH: 520|287 1 00010121 1 14|REPORT: XAllocColorCells() failed to allocate a r/w colourcell (255) 220|287 1 2 19:36:14|UNRESOLVED
520|287 2 00010121 1 1|VSW5TESTSUITE PURPOSE 2 520|287 2 00010121 1 2|Assertion XCopyColormapAndFree-2.(C) 520|287 2 00010121 1 3|When the colormap argument was created by the client with 520|287 2 00010121 1 4|alloc set to AllocAll, then all entries from the argument 520|287 2 00010121 1 5|colormap are moved to the new colourmap with the same colour 520|287 2 00010121 1 6|values and are freed in colormap. 520|287 2 00010121 1 7|METH: For each supported visual class: 520|287 2 00010121 1 8|METH: Create a colormap with using XCreateColormap with alloc set to AllocAll. 520|287 2 00010121 1 9|METH: Fill with recognisable values. 520|287 2 00010121 1 10|METH: For each of the colour cells, record the rgb value with XQueryColors. 520|287 2 00010121 1 11|METH: Create a new colourmap with XCopyColormapAndFree. 520|287 2 00010121 1 12|METH: Verify that colourmap entries are identical with XQueryColors. 520|287 2 00010121 1 13|METH: Verify that all the previous cells in the original colormap are freed (i.e. 520|287 2 00010121 1 14|METH: that they can all be reallocated again). 520|287 2 00010121 1 15|REPORT: Unexpected error BadAlloc 520|287 2 00010121 1 16|REPORT: BadAlloc (insufficient resources for operation) 520|287 2 00010121 1 17|REPORT: Protocol request was X_CreateColormap 520|287 2 00010121 1 18|REPORT: Unexpected Xlib error 520|287 2 00010121 1 19|REPORT: Unexpected error BadColor 520|287 2 00010121 1 20|REPORT: BadColor (invalid Colormap parameter) 520|287 2 00010121 1 21|REPORT: Protocol request was X_StoreColors 520|287 2 00010121 1 22|REPORT: Unexpected Xlib error 520|287 2 00010121 1 23|REPORT: Unexpected error BadColor 520|287 2 00010121 1 24|REPORT: BadColor (invalid Colormap parameter) 520|287 2 00010121 1 25|REPORT: Protocol request was X_QueryColors 520|287 2 00010121 1 26|REPORT: Unexpected Xlib error 220|287 2 2 19:36:14|UNRESOLVED
520|287 3 00010121 1 1|VSW5TESTSUITE PURPOSE 3 520|287 3 00010121 1 2|Assertion XCopyColormapAndFree-3.(C) 520|287 3 00010121 1 3|If any of the visual classes PseudoColor, GrayScale, or 520|287 3 00010121 1 4|DirectColor are supported: When the colormap argument was 520|287 3 00010121 1 5|created by the client with AllocNone, then all of the 520|287 3 00010121 1 6|entries from the colormap argument that have been allocated 520|287 3 00010121 1 7|by the client using XAllocColor, XAllocNamedColor, 520|287 3 00010121 1 8|XAllocColorCells, or XAllocColorPlanes and not freed since 520|287 3 00010121 1 9|they were allocated are moved to the new colourmap with the 520|287 3 00010121 1 10|same colour values and the same read-only or writable 520|287 3 00010121 1 11|characteristics and are freed in colormap. 520|287 3 00010121 1 12|METH: For each of the visual classes DirectColor, PseudoColor and GrayScale: 520|287 3 00010121 1 13|METH: Create a colormap with XCreateColormap and AllocNone. 520|287 3 00010121 1 14|METH: Create a new client with XOpenDisplay. 520|287 3 00010121 1 15|METH: Allocate two ro cells for First client with XAllocColor. 520|287 3 00010121 1 16|METH: Record their rgb values. 520|287 3 00010121 1 17|METH: Allocate two rw cells for First client with XAllocColorCells. 520|287 3 00010121 1 18|METH: Set their rgb values and record their rgb values. 520|287 3 00010121 1 19|METH: Allocate the rest of the colormap for Second client with XAllocColorCells. 520|287 3 00010121 1 20|METH: First client copies the colormap and free owned cells with with XCopyColormapAndFree. 520|287 3 00010121 1 21|METH: Verify that the Second clients cells in copy are not allocated with XAllocColorCells. 520|287 3 00010121 1 22|METH: Verify that the First clients four cells in copy are still there with correct rgb values. 520|287 3 00010121 1 23|METH: Verify that the four allocated cells are freed, can be reallocated, in old cmap. 520|287 3 00010121 1 24|METH: Verify r/o and r/w behaviour of these 4 in copy, with XStoreColors. 520|287 3 00010121 1 25|METH: 520|287 3 00010121 1 26|REPORT: Unexpected error BadColor 520|287 3 00010121 1 27|REPORT: BadColor (invalid Colormap parameter) 520|287 3 00010121 1 28|REPORT: Protocol request was X_FreeColormap 520|287 3 00010121 1 29|REPORT: Unexpected Xlib error 220|287 3 2 19:36:14|UNRESOLVED
---------------------------------------------------- 520|290 4 00010104 1 1|VSW5TESTSUITE PURPOSE 4 520|290 4 00010104 1 2|Assertion XFreeColors-4.(A) 520|290 4 00010104 1 3|If any of the visual classes DirectColor, PseudoColor or 520|290 4 00010104 1 4|GrayScale is supported: When one or more pixels cannot be 520|290 4 00010104 1 5|freed, and one or more pixels can be freed, then the pixels 520|290 4 00010104 1 6|that are allocated by the client in the colourmap that can 520|290 4 00010104 1 7|be freed are freed. 520|290 4 00010104 1 8|METH: For each visual class DirectColor, PseudoColor and GrayScale: 520|290 4 00010104 1 9|METH: Create a colormap with alloc set to AllocNone. 520|290 4 00010104 1 10|METH: Create a new client with XOpenDisplay. 520|290 4 00010104 1 11|METH: Allocate a r/o cell for the new client with XAllocColor. 520|290 4 00010104 1 12|METH: Allocate the rest of the colormap for the first client with XAllocColorCells. 520|290 4 00010104 1 13|METH: Free the entire colormap with the second client with XFreeColors. 520|290 4 00010104 1 14|METH: Verify that only one cell was freed with XAllocColorCells. 520|290 4 00010104 1 15|REPORT: Could not allocate 255 pixels with AllocColorCells (colormap size >= 256, done 254) 220|290 4 2 19:37:51|UNRESOLVED
------------------------------------------------------ 520|294 1 00010132 1 1|VSW5TESTSUITE PURPOSE 1 520|294 1 00010132 1 2|Assertion XQueryColors-1.(A) 520|294 1 00010132 1 3|A call to XQueryColors obtains the RGB values of the 520|294 1 00010132 1 4|colourmap entries specified by the pixel components of the 520|294 1 00010132 1 5|XColor structures named by the defs_in_out argument, and 520|294 1 00010132 1 6|returns the RGB values in the red, green, and blue 520|294 1 00010132 1 7|components and sets the flags components to the bitwise OR 520|294 1 00010132 1 8|of DoRed, DoGreen, and DoBlue. 520|294 1 00010132 1 9|METH: For each supported visual class : 520|294 1 00010132 1 10|METH: Create a colormap with XCreateColormap with alloc = AllocNone. 520|294 1 00010132 1 11|METH: Allocate a new r/o colourmap cell with XAllocColor. 520|294 1 00010132 1 12|METH: Obtain the rgb values and flags components with XQueryColors using the pixel returned by XAllocCOlor. 520|294 1 00010132 1 13|METH: Verify that the returned flags component was set to DORed|DoGreen|DoBlue. 520|294 1 00010132 1 14|METH: Verify that the rgb values are identical to those returned by XAllocColor. 520|294 1 00010132 1 15|REPORT: XAllocColor() failed. 220|294 1 2 19:38:15|UNRESOLVED
-------------------------------------------------------- 520|295 1 00010139 1 1|VSW5TESTSUITE PURPOSE 1 520|295 1 00010139 1 2|Assertion XStoreColor-1.(C) 520|295 1 00010139 1 3|If any of the visual classes DirectColor, PseudoColor or 520|295 1 00010139 1 4|Grayscale is supported: A call to XStoreColor obtains the 520|295 1 00010139 1 5|closest available RGB values for the colormap argument to 520|295 1 00010139 1 6|those specified in the red, green and blue components of 520|295 1 00010139 1 7|the XColor structure named by the color argument, and stores 520|295 1 00010139 1 8|those values in the read-write colourmap entry specified by 520|295 1 00010139 1 9|the pixel components of the XColor structure. 520|295 1 00010139 1 10|METH: For each visual class DirectColor, PseudoColor and GrayScale: 520|295 1 00010139 1 11|METH: Create a colormap with alloc set to AllocAll. 520|295 1 00010139 1 12|METH: Store the color r = 0xffff g = 0xf1f0 b = 0x0ff8 at cell 0. 520|295 1 00010139 1 13|METH: Obtain the rbg values of the stored color with XQueryColor. 520|295 1 00010139 1 14|METH: Store the returned rgb values in cell 0 520|295 1 00010139 1 15|METH: Obtain the stored values with XQueryColor. 520|295 1 00010139 1 16|METH: Verify the rgb values stored in both cases were identical. 520|295 1 00010139 1 17|REPORT: Unexpected error BadAlloc 520|295 1 00010139 1 18|REPORT: BadAlloc (insufficient resources for operation) 520|295 1 00010139 1 19|REPORT: Protocol request was X_CreateColormap 520|295 1 00010139 1 20|REPORT: Unexpected Xlib error 220|295 1 2 19:38:21|UNRESOLVED
520|295 2 00010139 1 1|VSW5TESTSUITE PURPOSE 2 520|295 2 00010139 1 2|Assertion XStoreColor-2.(C) 520|295 2 00010139 1 3|If any of the visual classes DirectColor, PseudoColor or 520|295 2 00010139 1 4|GrayScale is supported: A call to XStoreColor changes the 520|295 2 00010139 1 5|red, green and blue values in the read-write colourmap entry 520|295 2 00010139 1 6|in accordance with the flags component of the XColor 520|295 2 00010139 1 7|structure named by the color argument. 520|295 2 00010139 1 8|METH: For each supported visual class DirectColor, PseudoColor and GrayScale: 520|295 2 00010139 1 9|METH: Create a colormap with XCreateColormap. 520|295 2 00010139 1 10|METH: Store the color r = 0xffff g = 0xf1f0 b = 0x0ff8 at cell 0 with XStoreColor. 520|295 2 00010139 1 11|METH: Obtain the r,g and b values with XQueryColor. 520|295 2 00010139 1 12|METH: For each possible combination DoRed, DoGreen and DoBlue in flags: 520|295 2 00010139 1 13|METH: Store the bitwise complementary rgb values in the same cell with XStoreColor. 520|295 2 00010139 1 14|METH: Store the color r = 0xffff g = 0xf1f0 b = 0x0ff8 at cell 0 with XStoreColor. 520|295 2 00010139 1 15|METH: Verify that only the components of the colourcell specified by the flags value have been altered with XQueryColor. 520|295 2 00010139 1 16|METH: 520|295 2 00010139 1 17|REPORT: Unexpected error BadColor 520|295 2 00010139 1 18|REPORT: BadColor (invalid Colormap parameter) 520|295 2 00010139 1 19|REPORT: Protocol request was X_FreeColormap 520|295 2 00010139 1 20|REPORT: Unexpected Xlib error 220|295 2 2 19:38:21|UNRESOLVED
520|295 4 00010139 1 1|VSW5TESTSUITE PURPOSE 4 520|295 4 00010139 1 2|Assertion XStoreColor-4.(C) 520|295 4 00010139 1 3|If any of the visual classes DirectColor, PseudoColor or 520|295 4 00010139 1 4|GrayScale is supported: When the pixel component in the 520|295 4 00010139 1 5|XColor structure named by the color argument is not a valid 520|295 4 00010139 1 6|entry in the colormap argument, then a BadValue error 520|295 4 00010139 1 7|occurs. 520|295 4 00010139 1 8|METH: For each visual class DirectColor, PseudoColor and GrayScale: 520|295 4 00010139 1 9|METH: Create a colourmap with alloc set to AllocAll. 520|295 4 00010139 1 10|METH: Store the color r = 0xffff g = 0xf1f0 b = 0x0ff8 using XStoreColor with pixel = colormap_size. 520|295 4 00010139 1 11|METH: Verify that a BadValue error is generated. 520|295 4 00010139 1 12|REPORT: Unexpected error BadAlloc 520|295 4 00010139 1 13|REPORT: BadAlloc (insufficient resources for operation) 520|295 4 00010139 1 14|REPORT: Protocol request was X_CreateColormap 520|295 4 00010139 1 15|REPORT: Unexpected Xlib error 220|295 4 2 19:38:21|UNRESOLVED
520|295 5 00010139 1 1|VSW5TESTSUITE PURPOSE 5 520|295 5 00010139 1 2|Assertion XStoreColor-5.(A) 520|295 5 00010139 1 3|When an attempt to store into a read-only or an unallocated 520|295 5 00010139 1 4|colormap entry is made, then a BadAccess error occurs. 520|295 5 00010139 1 5|METH: For all visuals: 520|295 5 00010139 1 6|METH: Create a colormap with alloc set to AllocNone. (Unallocated for visual 520|295 5 00010139 1 7|METH: classes DirectColor, PseudoColor and GrayScale; R/O for visual 520|295 5 00010139 1 8|METH: classes TrueColor, StaticColor and StaticGray: all should 520|295 5 00010139 1 9|METH: provoke BadAccess) 520|295 5 00010139 1 10|METH: For each colormap cell: 520|295 5 00010139 1 11|METH: Store the color r = 0xffff g = 0xf1f0 b = 0x0ff8 using XStoreColor. 520|295 5 00010139 1 12|METH: Verify that a BadAccess error is generated. 520|295 5 00010139 1 13|METH: Create a new client with XOpenDisplay. 520|295 5 00010139 1 14|METH: Allocate a readonly cell for the new client with XAllocColor. 520|295 5 00010139 1 15|METH: Store a value in the cell with XStoreColor. 520|295 5 00010139 1 16|METH: Verify that a BadAccess error occurred. 520|295 5 00010139 1 17|METH: Allocate a readonly cell with XAllocColor. 520|295 5 00010139 1 18|METH: Store a value in the cell with XStoreColor. 520|295 5 00010139 1 19|METH: Verify that a BadAccess error occurred. 520|295 5 00010139 1 20|REPORT: Unexpected error BadColor 520|295 5 00010139 1 21|REPORT: BadColor (invalid Colormap parameter) 520|295 5 00010139 1 22|REPORT: Protocol request was X_FreeColormap 520|295 5 00010139 1 23|REPORT: Unexpected Xlib error 220|295 5 2 19:38:21|UNRESOLVED
------------------------------------------------------------
520|296 1 00010141 1 1|VSW5TESTSUITE PURPOSE 1 520|296 1 00010141 1 2|Assertion XStoreColors-1.(C) 520|296 1 00010141 1 3|If any of the visual classes DirectColor, PseudoColor or 520|296 1 00010141 1 4|Grayscale is supported: A call to XStoreColors obtains the 520|296 1 00010141 1 5|closest available RGB values for the colormap argument to 520|296 1 00010141 1 6|those specified in the red, green and blue components of 520|296 1 00010141 1 7|the XColor structures named by the color argument, and 520|296 1 00010141 1 8|stores those values in the read-write colourmap entries 520|296 1 00010141 1 9|specified by the pixel components of the XColor structures. 520|296 1 00010141 1 10|METH: For each visual class DirectColor, PseudoColor and GrayScale: 520|296 1 00010141 1 11|METH: Create a colourmap with alloc set to AllocAll; 520|296 1 00010141 1 12|METH: Store the color r = 0xffff g = 0xf1f0 b = 0x0ff8 in each cell of the colourmap with XStoreColors. 520|296 1 00010141 1 13|METH: Obtain the stored r,g b values with XQueryColors. 520|296 1 00010141 1 14|METH: Store the obtained r,g b values in each cell with XStoreColors. 520|296 1 00010141 1 15|METH: Obtain the stored r, g, b values with XQueryColors. 520|296 1 00010141 1 16|METH: Verify that these values are identical to those originally obtained. 520|296 1 00010141 1 17|REPORT: Unexpected error BadAlloc 520|296 1 00010141 1 18|REPORT: BadAlloc (insufficient resources for operation) 520|296 1 00010141 1 19|REPORT: Protocol request was X_CreateColormap 520|296 1 00010141 1 20|REPORT: Unexpected Xlib error 220|296 1 2 19:38:27|UNRESOLVED
520|296 2 00010141 1 1|VSW5TESTSUITE PURPOSE 2 520|296 2 00010141 1 2|Assertion XStoreColors-2.(C) 520|296 2 00010141 1 3|If any of the visual classes DirectColor, PseudoColor or 520|296 2 00010141 1 4|Grayscale is supported: A call to XStoreColors changes the 520|296 2 00010141 1 5|red, green and blue values in each of the ncolors read-write 520|296 2 00010141 1 6|colourmap entries in accordance with the flags components of 520|296 2 00010141 1 7|the XColor structures named by the color argument. 520|296 2 00010141 1 8|METH: For each supported visual class DirectColor, PseudoColor and GrayScale: 520|296 2 00010141 1 9|METH: Create a colormap with XCreateColormap. 520|296 2 00010141 1 10|METH: Obtain two distinct colormap values using XStoreColors and XQueryColors. 520|296 2 00010141 1 11|METH: For each possible combination DoRed, DoGreen and DoBlue in flags: 520|296 2 00010141 1 12|METH: Set all colormap cells to the first value with flags = DoRed|DoGreen|DoBlue 520|296 2 00010141 1 13|METH: Set all colormap cells to the second value with rbg components selected by the flag combination with XStoreColors. 520|296 2 00010141 1 14|METH: Verify that only the components of the colourcell specified by the flags were altered with XQueryColor. 520|296 2 00010141 1 15|REPORT: Unexpected error BadColor 520|296 2 00010141 1 16|REPORT: BadColor (invalid Colormap parameter) 520|296 2 00010141 1 17|REPORT: Protocol request was X_FreeColormap 520|296 2 00010141 1 18|REPORT: Unexpected Xlib error 220|296 2 2 19:38:27|UNRESOLVED
520|296 5 00010141 1 1|VSW5TESTSUITE PURPOSE 5 520|296 5 00010141 1 2|Assertion XStoreColors-5.(C) 520|296 5 00010141 1 3|If any of the visual classes DirectColor, PseudoColor or 520|296 5 00010141 1 4|GrayScale is supported: When the pixel component in more 520|296 5 00010141 1 5|than one of the XColor structures named by the color 520|296 5 00010141 1 6|argument is not a valid entry in the colormap argument, then 520|296 5 00010141 1 7|a BadValue error occurs which will report any one of the 520|296 5 00010141 1 8|invalid pixel values. 520|296 5 00010141 1 9|METH: For each visual class DirectColor, PseudoColor and GrayScale: 520|296 5 00010141 1 10|METH: Create a colormap with alloc set to AllocAll. 520|296 5 00010141 1 11|METH: Store an array of 3 colorvalues with pixel values -1, 0, -2. 520|296 5 00010141 1 12|METH: Verify that a BadValue error occurs. 520|296 5 00010141 1 13|METH: Verify that the erroneous pixel was reported as either -1 or -2. 520|296 5 00010141 1 14|REPORT: Unexpected error BadAlloc 520|296 5 00010141 1 15|REPORT: BadAlloc (insufficient resources for operation) 520|296 5 00010141 1 16|REPORT: Protocol request was X_CreateColormap 520|296 5 00010141 1 17|REPORT: Unexpected Xlib error 220|296 5 2 19:38:27|UNRESOLVED
520|296 6 00010141 1 1|VSW5TESTSUITE PURPOSE 6 520|296 6 00010141 1 2|Assertion XStoreColors-6.(A) 520|296 6 00010141 1 3|When an attempt to store into a read-only or an unallocated 520|296 6 00010141 1 4|colormap entry is made, then a BadAccess error occurs. 520|296 6 00010141 1 5|METH: For all visuals: 520|296 6 00010141 1 6|METH: Create a colormap with alloc set to AllocNone. (Unallocated for visual 520|296 6 00010141 1 7|METH: classes DirectColor, PseudoColor and GrayScale; R/O for visual 520|296 6 00010141 1 8|METH: classes TrueColor, StaticColor and StaticGray: all should 520|296 6 00010141 1 9|METH: provoke BadAccess) 520|296 6 00010141 1 10|METH: If visual class is not one of DirectColor, PseudoColor or GrayScale; 520|296 6 00010141 1 11|METH: Store distinct colors into all of the (already r/o) cells using XStoreColors. 520|296 6 00010141 1 12|METH: Verify that a BadAccess error is generated. 520|296 6 00010141 1 13|METH: Create a new client with XOpenDisplay. 520|296 6 00010141 1 14|METH: Allocate a readonly cell for the new client with XAllocColor. 520|296 6 00010141 1 15|METH: Store a value in the cell with XStoreColors. 520|296 6 00010141 1 16|METH: Verify that a BadAccess error occurred. 520|296 6 00010141 1 17|METH: Allocate a readonly cell with XAllocColor. 520|296 6 00010141 1 18|METH: Store a value in the cell with XStoreColors. 520|296 6 00010141 1 19|METH: Verify that a BadAccess error occurred. 520|296 6 00010141 1 20|REPORT: Unexpected error BadColor 520|296 6 00010141 1 21|REPORT: BadColor (invalid Colormap parameter) 520|296 6 00010141 1 22|REPORT: Protocol request was X_FreeColormap 520|296 6 00010141 1 23|REPORT: Unexpected Xlib error 220|296 6 2 19:38:27|UNRESOLVED
-----------------------------------------------------------------
520|297 1 00010140 1 1|VSW5TESTSUITE PURPOSE 1 520|297 1 00010140 1 2|Assertion XStoreNamedColor-1.(C) 520|297 1 00010140 1 3|If any of the visual classes DirectColor, PseudoColor or 520|297 1 00010140 1 4|GrayScale is supported: A call to XStoreNamedColor obtains 520|297 1 00010140 1 5|the closest available RGB values for the colormap argument 520|297 1 00010140 1 6|to those specified for the colour named color in the 520|297 1 00010140 1 7|database, and stores those values in the read-write 520|297 1 00010140 1 8|colourmap entry specified by the pixel component of the 520|297 1 00010140 1 9|XColor structure. 520|297 1 00010140 1 10|METH: For each visual class DirectColor, PseudoColor and GrayScale: 520|297 1 00010140 1 11|METH: Create a colormap with alloc set to AllocAll. 520|297 1 00010140 1 12|METH: Store the r,g and b colour values of XT_GOOD_COLOUR_NAME in the colourmap with XStoreNamedColor. 520|297 1 00010140 1 13|METH: Obtain the rbg values of the stored color with XQueryColor. 520|297 1 00010140 1 14|METH: Store those rgb values in the colormap with XStoreColor. 520|297 1 00010140 1 15|METH: Obtain the stored rgb values with XQueryColor. 520|297 1 00010140 1 16|METH: Verify the rgb values stored in the two cells are identical. 520|297 1 00010140 1 17|REPORT: Unexpected error BadAlloc 520|297 1 00010140 1 18|REPORT: BadAlloc (insufficient resources for operation) 520|297 1 00010140 1 19|REPORT: Protocol request was X_CreateColormap 520|297 1 00010140 1 20|REPORT: Unexpected Xlib error 220|297 1 2 19:38:33|UNRESOLVED
520|297 2 00010140 1 1|VSW5TESTSUITE PURPOSE 2 520|297 2 00010140 1 2|Assertion XStoreNamedColor-2.(A) 520|297 2 00010140 1 3|If any of the visual classes DirectColor, PseudoColor or 520|297 2 00010140 1 4|GrayScale is supported: A call to XStoreNamedColor changes 520|297 2 00010140 1 5|the red, green and blue values in the read-write colourmap 520|297 2 00010140 1 6|entry in accordance with the flags argument. 520|297 2 00010140 1 7|METH: For each supported visual class DirectColor, PseudoColor and GrayScale: 520|297 2 00010140 1 8|METH: Create a colormap with XCreateColormap. 520|297 2 00010140 1 9|METH: Store XT_GOOD_COLOR_NAME r, g and b values in cell 0 with XStoreNamedColor. 520|297 2 00010140 1 10|METH: Obtain the r,g and b values with XQueryColor. 520|297 2 00010140 1 11|METH: Complement the rgb values and store the value in cell 0 with XStoreColor. 520|297 2 00010140 1 12|METH: Obtain the bitwise complemented rgb values using XQueryColor. 520|297 2 00010140 1 13|METH: For each possible combination DoRed, DoGreen and DoBlue in flags: 520|297 2 00010140 1 14|METH: Store the bitwise complementary rgb values in the same cell with XStoreColor. 520|297 2 00010140 1 15|METH: Store the XT_GOOD_COLOR_NAME values in the colourmap cell using XStoreNamedColor. 520|297 2 00010140 1 16|METH: Verify that only the components of the colourcell specified by the flags value have been altered with XQueryColor. 520|297 2 00010140 1 17|REPORT: Unexpected error BadColor 520|297 2 00010140 1 18|REPORT: BadColor (invalid Colormap parameter) 520|297 2 00010140 1 19|REPORT: Protocol request was X_FreeColormap 520|297 2 00010140 1 20|REPORT: Unexpected Xlib error 220|297 2 2 19:38:33|UNRESOLVED
520|297 3 00010140 1 1|VSW5TESTSUITE PURPOSE 3 520|297 3 00010140 1 2|Assertion XStoreNamedColor-3.(A) 520|297 3 00010140 1 3|If any of the visual classes DirectColor, PseudoColor or 520|297 3 00010140 1 4|GrayScale is supported: Upper and lower case characters in 520|297 3 00010140 1 5|the color argument refer to the same color. 520|297 3 00010140 1 6|METH: For each supported visual class: 520|297 3 00010140 1 7|METH: Create a colomap with alloc set to AllocAll. 520|297 3 00010140 1 8|METH: Store colour XT_GOOD_COLOR_NAME in the colourmap with XStoreNamedColor. 520|297 3 00010140 1 9|METH: Obtain the stored rgb values with XQueryColor, 520|297 3 00010140 1 10|METH: Store colour XT_GOOD_COLOR_NAME with alternating characters in alternating case with XStoreNamedColor. 520|297 3 00010140 1 11|METH: Verify that the rgb values written by both calls was identical. 520|297 3 00010140 1 12|REPORT: Unexpected error BadAlloc 520|297 3 00010140 1 13|REPORT: BadAlloc (insufficient resources for operation) 520|297 3 00010140 1 14|REPORT: Protocol request was X_CreateColormap 520|297 3 00010140 1 15|REPORT: Unexpected Xlib error 220|297 3 2 19:38:33|UNRESOLVED
520|297 4 00010140 1 1|VSW5TESTSUITE PURPOSE 4 520|297 4 00010140 1 2|Assertion XStoreNamedColor-4.(A) 520|297 4 00010140 1 3|If any of the visual classes DirectColor, PseudoColor or 520|297 4 00010140 1 4|GrayScale is supported: When the pixel argument is not a 520|297 4 00010140 1 5|valid entry in the colormap argument, then a BadValue error 520|297 4 00010140 1 6|occurs. 520|297 4 00010140 1 7|METH: For each visual class DirectColor, PseudoColor and GrayScale: 520|297 4 00010140 1 8|METH: Create a colourmap with alloc set to AllocAll. 520|297 4 00010140 1 9|METH: Store the colour XT_GOOD_COLOR_NAME at pixel = colourmap_size with XStoreNamedColor. 520|297 4 00010140 1 10|METH: Verify that a BadValue error is generated. 520|297 4 00010140 1 11|REPORT: Unexpected error BadColor 520|297 4 00010140 1 12|REPORT: BadColor (invalid Colormap parameter) 520|297 4 00010140 1 13|REPORT: Protocol request was X_FreeColormap 520|297 4 00010140 1 14|REPORT: Unexpected Xlib error 220|297 4 2 19:38:33|UNRESOLVED
520|297 7 00010140 1 1|VSW5TESTSUITE PURPOSE 7 520|297 7 00010140 1 2|Assertion XStoreNamedColor-7.(A) 520|297 7 00010140 1 3|When the specified colour does not exist, then a BadName 520|297 7 00010140 1 4|error occurs. 520|297 7 00010140 1 5|METH: For the visual classes DirectColor, PseudoColor and GrayScale : 520|297 7 00010140 1 6|METH: Create a colormap with alloc set to AllocAll. 520|297 7 00010140 1 7|METH: Allocate a cell with colour XT_BAD_COLORNAME 520|297 7 00010140 1 8|METH: in the colourmap with XStoreNamedColor. 520|297 7 00010140 1 9|METH: Verify that a BadName error occurred. 520|297 7 00010140 1 10|REPORT: Unexpected error BadAlloc 520|297 7 00010140 1 11|REPORT: BadAlloc (insufficient resources for operation) 520|297 7 00010140 1 12|REPORT: Protocol request was X_CreateColormap 520|297 7 00010140 1 13|REPORT: Unexpected Xlib error 220|297 7 2 19:38:33|UNRESOLVED
520|297 8 00010140 1 1|VSW5TESTSUITE PURPOSE 8 520|297 8 00010140 1 2|Assertion XStoreNamedColor-8.(D) 520|297 8 00010140 1 3|When rmask_return, gmask_return and bmask_return have been 520|297 8 00010140 1 4|returned by a previous call to XAllocColorPlanes and a 520|297 8 00010140 1 5|read-write colourmap entry for a pixel value is changed by a 520|297 8 00010140 1 6|call to XStoreNamedColor, then the pixel value is 520|297 8 00010140 1 7|decomposed into three components using the masks and the 520|297 8 00010140 1 8|independent colourmap entries are updated. 520|297 8 00010140 1 9|Reason for omission: There is no known reliable test method for this assertion 520|297 8 00010140 1 10|METH: Report UNTESTED 520|297 8 00010140 1 11|REPORT: Unexpected error BadColor 520|297 8 00010140 1 12|REPORT: BadColor (invalid Colormap parameter) 520|297 8 00010140 1 13|REPORT: Protocol request was X_FreeColormap 520|297 8 00010140 1 14|REPORT: Unexpected Xlib error 220|297 8 2 19:38:33|UNRESOLVED
|
Test Output |
520|288 3 00010123 1 1|VSW5TESTSUITE PURPOSE 3 520|288 3 00010123 1 2|Assertion XCreateColormap-3.(C) 520|288 3 00010123 1 3|If any of the visual classes PseudoColor, GrayScale or 520|288 3 00010123 1 4|DirectColor are supported: When XCreateColormap is called 520|288 3 00010123 1 5|with a visual class that is one of PseudoColor, GrayScale 520|288 3 00010123 1 6|or DirectColor and alloc is AllocNone, then the colourmap 520|288 3 00010123 1 7|has no allocated entries. 520|288 3 00010123 1 8|METH: For each visual class PseudoColor, GrayScale and DirectColor: 520|288 3 00010123 1 9|METH: Create a colourmap with alloc set to AllocNone. 520|288 3 00010123 1 10|METH: Verify that no cells were allocated by Allocating all the colourmap cells 520|288 3 00010123 1 11|METH: with XAllocColorCells. 520|288 3 00010123 1 12|REPORT: Unable to allocate all colour cells 220|288 3 1 19:36:19|FAIL
520|288 4 00010123 1 1|VSW5TESTSUITE PURPOSE 4 520|288 4 00010123 1 2|Assertion XCreateColormap-4.(A) 520|288 4 00010123 1 3|If any of the visual classes PseudoColor, GrayScale or 520|288 4 00010123 1 4|DirectColor are supported: When XCreateColormap is called 520|288 4 00010123 1 5|with a visual class that is one of PseudoColor, GrayScale 520|288 4 00010123 1 6|or DirectColor and the argument alloc is AllocAll, then the 520|288 4 00010123 1 7|entire colourmap is allocated read-write. 520|288 4 00010123 1 8|METH: For each of the visual classes DirectColor, PseudoColor and GrayScale: 520|288 4 00010123 1 9|METH: Create a colormap with alloc set to AllocAll. 520|288 4 00010123 1 10|METH: Verify that the allocation of another r/w cell fails with XAllocColorCells. 520|288 4 00010123 1 11|REPORT: Got BadAlloc, Expecting Success 520|288 4 00010123 1 12|REPORT: Unexpected error BadColor 520|288 4 00010123 1 13|REPORT: BadColor (invalid Colormap parameter) 520|288 4 00010123 1 14|REPORT: Protocol request was X_AllocColorCells 520|288 4 00010123 1 15|REPORT: Unexpected Xlib error 220|288 4 1 19:36:19|FAIL
520|288 5 00010123 1 1|VSW5TESTSUITE PURPOSE 5 520|288 5 00010123 1 2|Assertion XCreateColormap-5.(C) 520|288 5 00010123 1 3|If either of the visual classes GrayScale or PseudoColor 520|288 5 00010123 1 4|are supported: When the visual class is GrayScale or 520|288 5 00010123 1 5|PseudoColor, and the argument alloc is AllocAll, then a 520|288 5 00010123 1 6|call to XCreateColormap allocates N read-write colourmap 520|288 5 00010123 1 7|entries with pixel values from zero to N - 1, where N is the 520|288 5 00010123 1 8|number of colourmap entries value in the specified visual. 520|288 5 00010123 1 9|METH: For each of the visuals GrayScale and PseudoColor: 520|288 5 00010123 1 10|METH: Create a colormap with alloc set to AllocAll. 520|288 5 00010123 1 11|METH: For each of the 0..N-1 allocated cells: 520|288 5 00010123 1 12|METH: Write value r 31<<8, g 63<<8, b 127<<8 with XStoreColor. 520|288 5 00010123 1 13|REPORT: Got BadAlloc, Expecting Success 220|288 5 1 19:36:27|FAIL
520|288 7 00010123 1 1|VSW5TESTSUITE PURPOSE 7 520|288 7 00010123 1 2|Assertion XCreateColormap-7.(C) 520|288 7 00010123 1 3|If any of the visual classes PseudoColor, GrayScale or 520|288 7 00010123 1 4|DirectColor are supported: When XCreateColormap is called 520|288 7 00010123 1 5|with a visual class that is one of PseudoColor, GrayScale 520|288 7 00010123 1 6|or DirectColor and the alloc argument is AllocAll, then 520|288 7 00010123 1 7|none of the entries can be freed with XFreeColors(). 520|288 7 00010123 1 8|METH: For the visual classes DirectColor, PseudoColor and GrayScale: 520|288 7 00010123 1 9|METH: Create a colourmap with XCreateColormap with alloc set to AllocAll. 520|288 7 00010123 1 10|METH: Deallocate a colorcell with XFreeColor. 520|288 7 00010123 1 11|METH: Allocate a colorcell with XAllocColorCell. 520|288 7 00010123 1 12|METH: Verify that the allocation failed. 520|288 7 00010123 1 13|REPORT: Got BadAlloc, Expecting Success 520|288 7 00010123 1 14|REPORT: Unexpected error BadColor 520|288 7 00010123 1 15|REPORT: BadColor (invalid Colormap parameter) 520|288 7 00010123 1 16|REPORT: Protocol request was X_AllocColorCells 520|288 7 00010123 1 17|REPORT: Unexpected Xlib error 520|288 7 00010123 1 18|REPORT: Unexpected error BadColor 520|288 7 00010123 1 19|REPORT: BadColor (invalid Colormap parameter) 520|288 7 00010123 1 20|REPORT: Protocol request was X_AllocColorCells 520|288 7 00010123 1 21|REPORT: Unexpected Xlib error 220|288 7 1 19:36:54|FAIL
|
Review Information
Review Type |
TSMA Review |
Start Date |
null |
Completed |
null |
Status |
Complete |
Review Recommendation |
No Resolution Given |
Review Response |
The problem seems to relate to the effect that the use of extensions to the VisualInfo structure can have on an X Windows application. The X windows system considers the information relating to a Visual to be extensible to allow for new screen attributes to be described for the Visual. However, the addition and use of these attributes should not cause currently well-behaved X Windows applications to fail. The issue in this case seems to be whether visual id 0x23 can be genuinely classified as PseudoColor or whether this Visual should be classified with a proprietary class to avoid problems of the type occuring in this waiver request.
I would propose that the manner in which extensions to the visual are indicated to an application be considered by the X org subgroup and that they propose a method by which an application can interrogate whether additional attributes are associated with the visual.
The significant numbers of test cases involved in this waiver request suggest that a portable solution needs to be found, either through changes in the content of the visual or through a means of omitting visuals that contain extensions that effect portable applications (such as those in the test suite). Issuing Test Suite Deficiencies would not seem a suitable solution for this number of tests.
|
Review Type |
SA Review |
Start Date |
null |
Completed |
null |
Status |
Complete |
Review Resolution |
No Resolution Given |
Review Conclusion |
This request is being sent for a 14 day formal review by x.org.
|
Review Type |
Expert Group Review |
Start Date |
null |
Completed |
null |
Status |
Complete |
Review Resolution |
No Resolution Given |
Review Conclusion |
The proposal is to grant a waiver of the type "Agreed Test Suite Deficiency" for the following tests:
Xlib3 ===== XMinCmapsOfScreen - 1 UNRESOLVED MinCmapsOfScreen - 1 UNRESOLVED
Xlib10 ====== XInstallColormap - 1,2 UNRESOLVED
Xlib7 ===== XAllocColorCells - 1,2,3 FAIL XCreateColormap - 3,4,5,7 FAIL XStoreNamedColor - 5 FAIL XCopyColormapAndFree - 1,2,3 UNRESOLVED XFreeColors - 4 UNRESOLVED XQueryColors - 1 UNRESOLVED XStoreColor - 1,2,4,5 UNRESOLVED XStoreColors - 1,2,5,6 UNRESOLVED XStoreNamedColor - 1,2,3,4,7,8 UNRESOLVED
We feel that granting a permanent waiver for this request would be incorrect. At most, this could be a waiver of the type "Agreed Test Suite Deficiency", as noted in the original request. Further information on this conclusion (along with some additional questions) is available below.
The X Window system does not state that an 8-bit PseudoColor visual MUST have 256 color cells. It can offer fewer than 256 color cells and still be a PseudoColor visual. Reference: O'Reilly Volume 1: Section 7.6.1 - The XVisualInfo Structure (page 218 of the Third Edition): "For the default visual of an 8-plane color system, this value is typically 254 or 256 (two colors are often reserved for the cursor)." Although this book is not an official standards document, per se, it is used heavily by application developers.
For additional clarification, we consulted the protocol specification for CreateColormap. The protocol specification supports the idea that a colormap with an 8-bit PseudoColor visual is not guaranteed to have 256 entries: "....The initial values of all allocated entries are undefined. For GrayScale and PseudoColor, the effect is as if an AllocColorCells request returned all pixel values from zero to N-1, where N is the colormap-entries value in the specified visual."
Therefore, the protocol specification allows for the case where the colormap associated with a PseudoColor visual may not implicitly leave (2^depth) entries available for client applications. Client applications can determine the number of available entries by interrogating the Xserver. This can be done via a call to XGetVisualInfo() and examining the "colormap_size" field in the returned visual(s). This information is also available in the "available colormap entries" output when the "xdpyinfo" command is run.
In light of this, we have concluded that there are two possibilities which could cause this error: (a) The Xserver implementation is not completely standards compliant (b) The VSW5 test suite isn't always examining the number of colormap entries that the visual offers, and it is trying to operate on more colormap entries than is advertised by the visual.
Applications, including VSW5, can test this properly if it only tested colormap entries [0..(n-1)], as long as n was set correctly in all cases by properly interrogating the Xserver.
To further try and understand if the problem resides with (a) or (b), we looked at the VSW5 test suite source for XCreateColormap(). It looks as though the VSW5 test source for XCreateColormap() is coded properly to look at the "colormap_size" field returned for the visual. Therefore, in the case of the XCreateColormap() test, it looks like the VSW5 test is trying to properly test the Xserver, and that the Xserver may be incorrect.
We did not analyze the remaining VSW5 tests mentioned in this waiver request. We are unclear of the process in this scenario, since we don't want to make too many assumptions about how VSW5 works. What is the correct thing for us to do in this situation?
Finally, we would like to comment on the text found in the "Consultants Initial Response" section. We do not like the idea of adding a new, proprietary visual class, since that would be more disruptive to the standard and to applications. If we created a new visual class, then applications (would need to change to take advantage of transparency). The X Window standard does not directly address transparency, but it allows transparent features to work with X applications by reporting fewer colormap entries.
Therefore, we have concluded there is no deficiency in the standard, and that VSW5 and other applications should be able to determine and test the appropriate number of colormap entries. The VSW5 test for XCreateColormap() appears to perform the appropriate interrogation to determine how many colormap entries are available, but we did not track down the VSW5 source for the remaining tests noted in this waiver request.
|
Review Type |
SA Review |
Start Date |
null |
Completed |
null |
Status |
Complete |
Review Resolution |
Rejected (REJ) |
Review Conclusion |
This request is refused.
|
Problem Reporting System Options:
|