Ticket #1795: libpcre.pir.patch

File libpcre.pir.patch, 1.2 KB (added by jkeenan, 4 years ago)

pcre nci interface implementation with changed compile function for new signatur.

  • runtime/parrot/library/libpcre.pir

     
    1919    .param string pat 
    2020    .param int options 
    2121 
    22     .local string error 
    2322    .local pmc PCRE_NCI_compile 
    24     .local int error_size 
    2523 
    2624    .local pmc NULL 
    2725    null NULL 
    2826 
     27    .local pmc errstr_p 
     28    errstr_p = new ['Pointer'] 
     29 
    2930    .local pmc errptr 
    3031    errptr= new 'Integer' 
    3132 
    32     ## error message string size 
    33     error_size= 500 
    34  
    35     ## allocate space in string for error message 
    36     repeat error, " ", error_size 
    37  
    3833    PCRE_NCI_compile = get_hll_global ['PCRE'; 'NCI'], 'PCRE_compile' 
    3934 
    4035    .local pmc code 
    4136 
    42     code = PCRE_NCI_compile( pat, options, error, errptr, NULL ) 
     37    code = PCRE_NCI_compile( pat, options, errstr_p, errptr, NULL ) 
    4338 
    4439    .local int is_code_defined 
     40    .local string errstr 
    4541    is_code_defined = defined code 
    46     unless is_code_defined goto RETURN 
     42    if is_code_defined goto RETURN 
     43    errstr = errstr_p 
    4744 
    48     error = "" 
    49  
    5045RETURN: 
    51     .return( code, error, errptr ) 
     46    .return( code, errstr, errptr ) 
    5247.end 
    5348 
    5449