Patch Name: PHSS_9236 Patch Description: s700 9.X 9.07 PEX 5.1 Development cumulative patch Creation Date: 97/01/29 Post Date: 97/01/30 Hardware Platforms - OS Releases: s700: 9.01 9.03 9.05 9.07 Products: HP-PEX5 Development Environment Filesets: PEX5-PRG PEX5-HELP PEX5-EXAMPLES Automatic Reboot?: No Status: General Release Critical: No Path Name: /hp-ux_patches/s700/9.X/PHSS_9236 Symptoms: PHSS_9236: - Under HP PEX, in the case where PEXBeginRendering was called with HLHSR enabled on a window that was later resized, the software zbuffer could be managed incorrectly, resulting in various kinds of "stitching" during rendering. PHSS_8092: - PEXOCCTriangles draws triangles with alternating geometric normals, causing incorrect display or non-display of these triangles when face distinguishing is active and interior style is hollow. - Locked structures or structures containing PEXNoop elements may dump core when traversed. - Memory corruption/core dump may occur on VISUALIZE-24 and VISUALIZE-48 using SOFAs. PHSS_7487: - PEX DRAW_POINTS gescape support. PHSS_6907: - PEX structures won't be picked if max_paths exceeded. - Missing hatching functionality on PEX API for Visualize-24 and Visualize-48 devices now enabled. PHSS_6539: - Occasional failures during the loading of an application using PEXlib, with the message that SwapCARD16 and SwapFLOAT are unresolved. - PEX indexed colors were pushed incorrectly during structure traversal and immediate mode. The popped color would be incorrect. - PEXDestroyStructures corrupted the current element location in structures referencing the destroyed structures. Subsequent structure operations based on the current element location would be performed incorrectly PHSS_6243: -Default PEX textures can appear on VISUALIZE-48 with Texture Mapping hardware on programs that previously rendered non default texture mapped images correctly. - Additional PEX functionality for primitives and attributes. Added are specific new functionality, including new primitives, attributes, and renderer controls. The new primitives are TriangleFan, IndexedTriangleStrip, IndexedTriangleFan, IndependentTriangles, IndexedIndependentTriangles, IndexedPolylines, and IndexedMarkers. The new attributes are, UserLineType, UserMarkerGlyph, FaceLightingMode, and HighlightColor. The new Renderer control is WideLineControl. In addition, the color vertex attribute is now supported on Markers. PHSS_6019: - If an application repeatedly adds ignored elements (i.e. application data) to a segment, the traversal time for that segment goes higher and higher. This fix detects this phenomenon for some segments (particulary certain PHIGS structures) and shortens the traversal time significantly for these segments. - Several HP-supported PEX escape codes are not listed by PEXGetEnumTypeInfo for enumerated type PEXETEscape. This makes it impossible for applications to determine if the escapes are supported by this route. In particular, the Z- buffer read/write escapes added at HPPEX 5.1v3 are not listed. Also, certain CGE enumerated types such as PEXExtETOC do not list all the HP-supported values. This has been a defect since the 5.1v2 release. - Several memory leaks can be detected in the PEX API code using Purify on a very typical program. The worst leaks, of 512 and 128 bytes, occur one for every time a Renderer is bound to a window it has not been bound to before. PHSS_5623: - Several prototypes for 5.2 OCC versions of PEX 5.1 attributes were incorrect in the HP-PEX 5.1v3/9.07 header files. To avoid possible future source code incompatibilities should applications attempt to call these functions with the incorrect 5.2 parameter lists, they were declared to be unsupported in the initial release. - Setting up an output command context (OCC) for strided data format, and then using the same OCC with several different PEX Renderers, results in incorrect rendering. - PEXExtSetOfFillAreaSets has lower performance in HP-PEX 5.1v3/9.07 than does either PEXSetOfFillAreaSets or PEXOCCIndexedFillAreaSets, most noticeably on some new graphics devices. - PEXOCCSetValueMask does not correctly handle the special value PEXOCCMAll5_2 in release 5.1v3/9.07 of HP-PEX. - In HP-PEX 5.1v3/9.07, most PEX 5.1 area primitives are texture mapped if the interior style is PEXExtInteriorStyleTexture when they are drawn. However, PEXFillArea is not consistently texture-mapped with the most-recently-set texturing setup - PEXExtCreateFilteredTMFromWindow does not operate correctly and may get BadMatch error. - HP-PEX 5.1v3/9.07 header files are missing function prototypes for most OCC utility functions; prototype for PEXCopyOCCValues was misnamed. - PEXPolylineSetWithData performance in Structure mode can be as much as 25% lower in HP-PEX 5.1v3/9.07 than it was in 5.1v2/9.05. Immediate mode performance is unaffected. - The prototypes for most OCC attributes and primitives were missing from PEXlib.h. PEXlib.h has been corrected. - OCC interface cannot be used when procedure PEXlib interface (enabled by defining HPPEX_PROCEDURES in the application compilation) is in use. - Setting up an output command context (OCC) for strided data format, and then using the same OCC with several different PEX Renderers, results in incorrect rendering. Defect Description: PHSS_9236: See Symptoms PHSS_8092: See Symptoms PHSS_7487: See Symptoms PHSS_6907: See Symptoms PHSS_6539: See Symptoms PHSS_6243: See Symptoms PHSS_6019: See Symptoms PHSS_5623: See Symptoms SR: 1653154013 1653154393 1653162792 1653159269 1653173104 Patch Files: /usr/include/X11R5/X11/PEX5/PEXlib.h /usr/include/X11R5/X11/PEX5/PEX.h /usr/include/X11R5/X11/PEX5/PEXHPlib.h /usr/include/X11R5/X11/PEX5/PEXHPlibint.h /usr/vhelp/help/C/PEXHelp/PEX5.1v3Ref.hv /usr/vhelp/help/C/PEXHelp/PEX5.1v3Ref.hvk /usr/vhelp/help/C/PEXHelp/PEX5.1v3Ref00.ht /usr/vhelp/help/C/PEXHelp/PEX5.1v3Ref01.ht /usr/lib/PEX5/hp_examples/structure_permission.c /usr/lib/PEX5/hp_examples/SubsetAAModeling/SubsetMode/ ssm_build.c /usr/lib/PEX5/cge_utilities/PEXUtCmapint.c /usr/contrib/PEX5/README /etc/filesets/PEX5-EXAMPLES what(1) Output: /usr/include/X11R5/X11/PEX5/PEXlib.h: No what string for this file /usr/include/X11R5/X11/PEX5/PEX.h: No what string for this file /usr/include/X11R5/X11/PEX5/PEXHPlib.h: No what string for this file /usr/include/X11R5/X11/PEX5/PEXHPlibint.h: No what string for this file /usr/vhelp/help/C/PEXHelp/PEX5.1v3Ref.hv: No what string for this file /usr/vhelp/help/C/PEXHelp/PEX5.1v3Ref.hvk: No what string for this file /usr/vhelp/help/C/PEXHelp/PEX5.1v3Ref00.ht: No what string for this file /usr/vhelp/help/C/PEXHelp/PEX5.1v3Ref01.ht: No what string for this file /usr/lib/PEX5/hp_examples/structure_permission.c: No what string for this file /usr/lib/PEX5/hp_examples/SubsetAAModeling/SubsetMode/ ssm_build.c: No what string for this file /usr/lib/PEX5/cge_utilities/PEXUtCmapint.c: No what string for this file /usr/contrib/PEX5/README: No what string for this file /etc/filesets/PEX5-EXAMPLES: No what string for this file sum(1) Output: 49437 588 /usr/include/X11R5/X11/PEX5/PEXlib.h 10220 195 /usr/include/X11R5/X11/PEX5/PEX.h 9562 77 /usr/include/X11R5/X11/PEX5/PEXHPlib.h 11874 146 /usr/include/X11R5/X11/PEX5/PEXHPlibint.h 58139 741 /usr/vhelp/help/C/PEXHelp/PEX5.1v3Ref.hv 11560 531 /usr/vhelp/help/C/PEXHelp/PEX5.1v3Ref.hvk 36518 3466 /usr/vhelp/help/C/PEXHelp/PEX5.1v3Ref00.ht 39248 12 /usr/vhelp/help/C/PEXHelp/PEX5.1v3Ref01.ht 17436 64 /usr/lib/PEX5/hp_examples/structure_permission.c 17590 29 /usr/lib/PEX5/hp_examples/SubsetAAModeling/ SubsetMode/ssm_build.c 26534 101 /usr/lib/PEX5/cge_utilities/PEXUtCmapint.c 58151 3 /usr/contrib/PEX5/README 60674 21 /etc/filesets/PEX5-EXAMPLES Patch Conflicts: None Patch Dependencies: s700: 9.01 9.03 9.05: PHSS_5695 and PHSS_5696 and PHSS_5914 and PHSS_5915 and PHSS_9234 s700: 9.07: PHSS_9234 Hardware Dependencies: None Other Dependencies: None Supersedes: PHSS_5623 PHSS_6019 PHSS_6243 PHSS_6539 PHSS_6907 PHSS_7487 PHSS_8092 Equivalent Patches: None Patch Package Size: 3060 Kbytes Installation Instructions: Please review all instructions and the Hewlett-Packard SupportLine User Guide or your Hewlett-Packard support terms and conditions for precautions, scope of license, restrictions, and, limitation of liability and warranties, before installing this patch. ------------------------------------------------------------ 1. Back up your system before installing a patch. 2. Copy the patch to your /tmp directory and unshar it: cd /tmp cp patch_source/PHSS_9236 . sh PHSS_9236 3. Become root and run update: /etc/update [-r [kernel_gen_file]] -s \ /tmp/PHSS_9236.updt PHSS_9236 Update moves the original software to /system/PHSS_9236/orig. Keep this file to recover from any potential problems. You should move the .text file to /system/PHSS_9236 for future reference. To put this patch on a magnetic tape and update from the tape drive, use dd: dd if=PHSS_9236.updt of=/dev/rmt/0m bs=2048 Special Installation Instructions: Be sure that applications using PEX are NOT running and that the X-server is NOT running before installing this patch. Executables may appear "busy" to the file system and therefore unwritable because HP-UX uses the executable's image on disk as swap for code segments. The same is true for shared libraries because they are executable images as well.