Patch Name: PHSS_7488 Patch Description: s700 9.X 9.07 PEX Runtime June Periodic Patch Creation Date: 96/07/02 Post Date: 96/07/15 Hardware Platforms - OS Releases: s700: 9.01 9.03 9.05 9.07 Products: N/A Filesets: PEX5-RUN Automatic Reboot?: No Status: General Release Critical: No Path Name: /hp-ux_patches/s700/9.X/PHSS_7488 Symptoms: PHSS_7488: - PEX DRAW_POINTS gescape support. PHSS_6908: - 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_6540: - 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_6244: -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_6020: - 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_5624: - 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_7488: See Symptoms PHSS_6908: See Symptoms PHSS_6540: See Symptoms PHSS_6244: See Symptoms PHSS_6020: See Symptoms PHSS_5624: See Symptoms SR: 1653154013 1653154393 1653162792 1653159269 Patch Files: /usr/bin/X11/pexd /usr/bin/X11/pexd_init /usr/lib/libPEX5.sl /usr/lib/PEX5/cge_utilities/libPEXUt.sl what(1) Output: /usr/bin/X11/pexd: $Revision: 530.1.100.9 $ $Date: 96/06/03 17:08:48 $ pexd PEX 5.1 v2 Server Daemon PHSS_7487/7488 June 96 PEX5 9.07 Periodic Patch /usr/bin/X11/pexd_init: $Revision: 530.1.100.9 $ $Date: 96/06/03 17:08:48 $ pexd PEX 5.1 v2 Server Daemon PHSS_7487/7488 June 96 PEX5 9.07 Periodic Patch /usr/lib/libPEX5.sl: $Revision: 530.1.100.9 $ $Date: 96/06/03 17:08:48 $ libPEX5 PEX 5.1 v2 API Library PHSS_7487/7488 June 96 PEX5 9.07 Periodic Patch /usr/lib/PEX5/cge_utilities/libPEXUt.sl: CGE Version 1.0 Utilities Library $Revision: 530.1.100.1 $ $Date: 95/03/31 19:20:40 $ sum(1) Output: 62487 536 /usr/bin/X11/pexd 3518 152 /usr/bin/X11/pexd_init 18478 3592 /usr/lib/libPEX5.sl 51686 80 /usr/lib/PEX5/cge_utilities/libPEXUt.sl Patch Conflicts: None Patch Dependencies: s700: 9.01 9.03 9.05: PHSS_5695 and PHSS_5696 and PHSS_5914 and PHSS_5916 and PHSS_7486 s700: 9.07: PHSS_7486 Hardware Dependencies: None Other Dependencies: None Supersedes: PHSS_5624 PHSS_6020 PHSS_6244 PHSS_6540 PHSS_6908 Equivalent Patches: None Patch Package Size: 2250 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_7488 . sh PHSS_7488 3. Become root and run update: /etc/update [-r [kernel_gen_file]] -s \ /tmp/PHSS_7488.updt PHSS_7488 Update moves the original software to /system/PHSS_7488/orig. Keep this file to recover from any potential problems. You should move the .text file to /system/PHSS_7488 for future reference. To put this patch on a magnetic tape and update from the tape drive, use dd: dd if=PHSS_7488.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.