@@ -580,15 +580,16 @@ HL_PRIM varray *hl_enum_parameters( venum *e ) {
580580
581581static void * hl_guid_map = NULL ;
582582extern void * hl_hi64alloc ();
583- extern void hl_hi64set ( void * map , int64 guid , vbyte * name );
584- extern vbyte * hl_hi64get ( void * map , int64 guid );
583+ extern void hl_hi64set ( void * map , int64 guid , vdynamic * name );
584+ extern vdynamic * hl_hi64get ( void * map , int64 guid );
585585extern void hl_hi64remove ( void * map , int64 guid );
586586
587587HL_PRIM uchar * hl_guid_str ( int64 guid , uchar buf [14 ] ) {
588588 static char CHARS [] = "#&0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz" ;
589589 int i ;
590590 int pos = 0 ;
591- uchar * name = hl_guid_map ? (uchar * )hl_hi64get (hl_guid_map ,guid ) : NULL ;
591+ vdynamic * data = hl_guid_map ? hl_hi64get (hl_guid_map ,guid ) : NULL ;
592+ uchar * name = data ? (uchar * )(data -> v .bytes ) : NULL ;
592593 if ( name != NULL )
593594 return name ;
594595 if ( guid == 0 )
@@ -609,7 +610,7 @@ HL_PRIM void hl_register_guid_name( int64 guid, vbyte *name ) {
609610 hl_add_root (& hl_guid_map );
610611 }
611612 if ( name )
612- hl_hi64set (hl_guid_map , guid , name );
613+ hl_hi64set (hl_guid_map , guid , hl_make_dyn ( & name , & hlt_bytes ) );
613614 else
614615 hl_hi64remove (hl_guid_map , guid );
615616}
0 commit comments