Ticket #218: TT_218.patch

File TT_218.patch, 0.8 KB (added by NotFound, 5 years ago)

Quick hack for FixedPMCArray sort method

  • src/pmc/fixedpmcarray.pmc

     
    4444    METHOD sort(PMC *cmp_func :optional) { 
    4545        const INTVAL n = SELF.elements(); 
    4646 
    47         if (n > 1) 
    48            Parrot_quicksort(interp, (void **)PMC_array(SELF), n, cmp_func); 
     47        if (n > 1) { 
     48           if (PObj_is_object_TEST(SELF)) { 
     49               PMC *parent = SELF.get_attr_str(CONST_STRING(interp, "proxy")); 
     50               Parrot_pcc_invoke_method_from_c_args(interp, parent, CONST_STRING(interp, "sort"), "P->", cmp_func); 
     51           } 
     52           else 
     53               Parrot_quicksort(interp, (void **)PMC_array(SELF), n, cmp_func); 
     54        } 
    4955    } 
    5056 
    5157/*