Report 1709 Actions
Problem Report Number |
1709 |
Submitter's Classification |
Test Suite problem |
State |
Resolved |
Resolution |
Rejected (REJ) |
Problem Resolution ID |
REJ.X.0492 |
Raised |
1970-01-01 08:00 |
Updated |
2003-03-13 08:00 |
Published |
null |
Product Standard |
X Window System Display |
Certification Program |
The Open Brand certification program |
Test Suite |
VSW version 5.0.1 |
Test Identification |
Xlib4/XCreateWindow 29 41 |
Problem Summary |
PG4W.00092 This implementation has visual types which it does not distinguish as these tests require. |
Problem Text |
Failing Testcases: XCreateWindow 29 41 XChangeWindowAttributes 31 43 XSetWindowColormap 2 All of the above expect BadMatch errors to be generated as a result of operations where two conflicting visuals are in use. In our case we have a number of visuals which differ only in visualid i.e. class is the same, rgb masks are the same, bits_per_rgb is the same and map_entries is the same. As a result, BadMatch errors are not generated! Here's some dbx output ... 1. Assertion XCreateWindow-29.(A) (dbx) stop at Test.c:2466 (2) stop at "Test.c":2466 (dbx) run 29 Running: Test 29 (process id 23987) stopped in t029 at line 2466 in file "Test.c" 2466 (void)XCreateWindow(display, parent, x, y, width, height, border_width, depth, s s, visual, valuemask, attributes); (dbx) p *visual *visual = { ext_data = (nil) visualid = 32U class = 3 red_mask = 0 green_mask = 0 blue_mask = 0 bits_per_rgb = 8 map_entries = 256 } (dbx) p *vp->visual *vp->visual = { ext_data = (nil) visualid = 33U class = 3 red_mask = 0 green_mask = 0 blue_mask = 0 bits_per_rgb = 8 map_entries = 256 } (dbx) n stopped in t029 at line 2467 in file "Test.c" 2467 endcall(display); (dbx) n stopped in t029 at line 2468 in file "Test.c" 2468 if (geterr() != BadMatch) { (dbx) n stopped in t029 at line 2469 in file "Test.c" 2469 report("Got %s, Expecting BadMatch", errorname(geterr())); (dbx) n stopped in t029 at line 2470 in file "Test.c" 2470 FAIL; 2. Assertion XCreateWindow-41.(A) (dbx) stop at Test.c:3267 (2) stop at "Test.c":3267 (dbx) run 41 Running: Test 41 (process id 24000) stopped in t041 at line 3267 in file "Test.c" 3267 (void)XCreateWindow(display, parent, x, y, width, height, border_width, depth, c lass, visual, valuemask, attributes); (dbx) p *visual *visual = { ext_data = (nil) visualid = 33U class = 3 red_mask = 0 green_mask = 0 blue_mask = 0 bits_per_rgb = 8 map_entries = 256 } (dbx) p *vp2.visual *vp2->visual = { ext_data = (nil) visualid = 32U class = 3 red_mask = 0 green_mask = 0 blue_mask = 0 bits_per_rgb = 8 map_entries = 256 } (dbx) n stopped in t041 at line 3268 in file "Test.c" 3268 endcall(display); (dbx) n stopped in t041 at line 3269 in file "Test.c" 3269 if (geterr() != BadMatch) { (dbx) n stopped in t041 at line 3270 in file "Test.c" 3270 report("Got %s, Expecting BadMatch", errorname(geterr())); (dbx) n stopped in t041 at line 3271 in file "Test.c" 3271 FAIL; 3. Assertion XChangeWindowAttributes-31.(A) (dbx) stop at Test.c:2657 (2) stop at "Test.c":2657 (dbx) run 31 Running: Test 31 (process id 24136) stopped in t031 at line 2657 in file "Test.c" 2657 (void)XChangeWindowAttributes(display, w, valuemask, attributes); (dbx) p *vp->visual *vp->visual = { ext_data = (nil) visualid = 33U class = 3 red_mask = 0 green_mask = 0 blue_mask = 0 bits_per_rgb = 8 map_entries = 256 } (dbx) p *visual *visual = { ext_data = (nil) visualid = 32U class = 3 red_mask = 0 green_mask = 0 blue_mask = 0 bits_per_rgb = 8 map_entries = 256 } (dbx) n stopped in t031 at line 2658 in file "Test.c" 2658 endcall(display); (dbx) n stopped in t031 at line 2659 in file "Test.c" 2659 if (geterr() != BadMatch) { (dbx) n stopped in t031 at line 2660 in file "Test.c" 2660 report("Got %s, Expecting BadMatch", errorname(geterr())); (dbx) n stopped in t031 at line 2661 in file "Test.c" 2661 FAIL; 4. Assertion XChangeWindowAttributes-43.(A) (dbx) stop at 3428 (3) stop at "Test.c":3428 (dbx) run 43 Running: Test 43 (process id 24143) stopped in t043 at line 3428 in file "Test.c" 3428 (void)XChangeWindowAttributes(display, w, valuemask, attributes); (dbx) p *vp2.visual *vp2->visual = { ext_data = (nil) visualid = 32U class = 3 red_mask = 0 green_mask = 0 blue_mask = 0 bits_per_rgb = 8 map_entries = 256 } (dbx) p *visual *visual = { ext_data = (nil) visualid = 33U class = 3 red_mask = 0 green_mask = 0 blue_mask = 0 bits_per_rgb = 8 map_entries = 256 } (dbx) n stopped in t043 at line 3429 in file "Test.c" 3429 endcall(display); (dbx) n stopped in t043 at line 3430 in file "Test.c" 3430 if (geterr() != BadMatch) { (dbx) n stopped in t043 at line 3431 in file "Test.c" 3431 report("Got %s, Expecting BadMatch", errorname(geterr())); (dbx) n stopped in t043 at line 3432 in file "Test.c" 3432 FAIL; 5. Assertion XSetWindowColormap-2.(C) (dbx) stop at Test.c:329 (2) stop at "Test.c":329 (dbx) run 2 Running: Test 2 (process id 24061) stopped in t002 at line 329 in file "Test.c" 329 XSetWindowColormap(display, w, colormap); (dbx) p *vi.visual *vi->visual = { ext_data = (nil) visualid = 32U class = 3 red_mask = 0 green_mask = 0 blue_mask = 0 bits_per_rgb = 8 map_entries = 256 } (dbx) p *visuals[i] *visuals[i] = { ext_data = (nil) visualid = 33U class = 3 red_mask = 0 green_mask = 0 blue_mask = 0 bits_per_rgb = 8 map_entries = 256 } (dbx) n stopped in t002 at line 330 in file "Test.c" 330 endcall(display); (dbx) n stopped in t002 at line 331 in file "Test.c" 331 if (geterr() != BadMatch) { (dbx) n stopped in t002 at line 332 in file "Test.c" 332 report("Got %s, Expecting BadMatch", errorname(geterr())); (dbx) n stopped in t002 at line 333 in file "Test.c" 333 FAIL;
|
Test Output |
TEST CASE: XCreateWindow TEST PURPOSE #29 Assertion XCreateWindow-29.(A) When colormap and the window do not have the same visual type, then a BadMatch error occurs. METH: If two different visual types are supported: METH: Create colour map of different visual to window. METH: Attempt to set colourmap to created colour map. METH: Verify that a BadMatch error occurs. METH: else METH: UNSUPPORTED. REPORT: Got Success, Expecting BadMatch 29 FAIL TEST PURPOSE #41 Assertion XCreateWindow-41.(A) When colormap is CopyFromParent and the window does not have the same visual type as the parent window, then a BadMatch error occurs. METH: If two different visual types are supported: METH: Create a parent of one visual type METH: Attempt to set colourmap to CopyFromParent on window of different visual type. METH: Verify that a BadMatch error occurs. METH: else METH: UNSUPPORTED. REPORT: Got Success, Expecting BadMatch 41 FAIL TEST CASE: XChangeWindowAttributes TEST PURPOSE #31 Assertion XChangeWindowAttributes-31.(A) When colormap and the window do not have the same visual type, then a BadMatch error occurs. METH: If two different visual types are supported: METH: Create colour map of different visual to window. METH: Attempt to set colourmap to created colour map. METH: Verify that a BadMatch error occurs. METH: else METH: UNSUPPORTED. REPORT: Got Success, Expecting BadMatch 31 FAIL TEST PURPOSE #43 Assertion XChangeWindowAttributes-43.(A) When colormap is CopyFromParent and the window does not have the same visual type as the parent window, then a BadMatch error occurs. METH: If two different visual types are supported: METH: Create a parent of one visual type METH: Attempt to set colourmap to CopyFromParent on window of different visual type. METH: Verify that a BadMatch error occurs. METH: else METH: UNSUPPORTED. REPORT: Got Success, Expecting BadMatch 43 FAIL TEST CASE: XSetWindowColormap TEST PURPOSE #2 Assertion XSetWindowColormap-2.(C) If more than one type of visual is supported: When the colormap argument does not have the same visual type as the window specified by the window argument w, then a BadMatch error occurs. METH: For each supported visual: METH: Create a colormap not of that visual type. METH: Create a window of that visual type. METH: Verify that a call to XSetWindowColormap generates a BadMatch error. REPORT: Got Success, Expecting BadMatch REPORT: Got Success, Expecting BadMatch REPORT: Got Success, Expecting BadMatch REPORT: Got Success, Expecting BadMatch REPORT: Got Success, Expecting BadMatch 2 FAIL
|
Review Information
Review Type |
TSMA Review |
Start Date |
null |
Completed |
null |
Status |
Complete |
Review Recommendation |
No Resolution Given |
Review Response |
We recommend this request be denied. The specification is clear in saying that the issue here is a difference in visual type. There is no allowance made for treating any sort of difference as less than salient. Given the implementation presents these visuals as different types across the Xlib interface these tests are correct in expecting BadMatch errors to result in the situations being tested. N.B. We could see a basis for a PIN contending the spec should be more accomodating. Also, we believe this behavior has a negligable impact on application portability and would be ammenable to recommending an MSF for these results.
|
Review Type |
SA Review |
Start Date |
null |
Completed |
null |
Status |
Complete |
Review Resolution |
No Resolution Given |
Review Conclusion |
This request could be resubmitted as a request for a Permanent Interpretation however it could then be refused as it would need a 14 day review which could go either way. If time is a factor, then an application for a Temporary Waiver would most likely be granted. Please see Consultant's comments below,
|
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:
|