Changeset 5151

Show
Ignore:
Timestamp:
01/05/08 01:03:03 (9 months ago)
Author:
morris
Message:

Rename wi_array_argv() to wi_array_create_argv()

Add wi_array_destroy_argv()

Add wi_array_by_adding_data() and wi_array_by_adding_data_from_array()

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • libwired/trunk/libwired/collections/wi-array.c

    r4817 r5151  
    585585 
    586586 
    587 const char ** wi_array_argv(wi_array_t *array) { 
     587const char ** wi_array_create_argv(wi_array_t *array) { 
    588588        wi_string_t             *description; 
    589589        const char              **argv; 
     
    607607         
    608608        return argv; 
     609} 
     610 
     611 
     612 
     613void wi_array_destroy_argv(wi_uinteger_t argc, const char **argv) { 
     614        wi_uinteger_t   i; 
     615         
     616        for(i = 0; i < argc; i++) 
     617                free((char *) argv[i]); 
     618         
     619        free(argv); 
    609620} 
    610621 
     
    858869 
    859870 
     871wi_array_t * wi_array_by_adding_data(wi_array_t *array, void *data) { 
     872        wi_array_t              *newarray; 
     873         
     874        newarray = wi_copy(array); 
     875        wi_array_add_data(array, data); 
     876         
     877        return wi_autorelease(newarray); 
     878} 
     879 
     880 
     881 
    860882void wi_array_add_data_sorted(wi_array_t *array, void *data, wi_compare_func_t *compare) { 
    861883        _wi_array_item_t        *item; 
     
    876898        for(i = 0; i < count; i++) 
    877899                wi_array_add_data(array, wi_array_data_at_index(otherarray, i)); 
     900} 
     901 
     902 
     903wi_array_t * wi_array_by_adding_data_from_array(wi_array_t *array, wi_array_t *otherarray) { 
     904        wi_array_t              *newarray; 
     905         
     906        newarray = wi_copy(array); 
     907        wi_array_add_data_from_array(array, otherarray); 
     908         
     909        return wi_autorelease(newarray); 
    878910} 
    879911 
  • libwired/trunk/libwired/collections/wi-array.h

    r4774 r5151  
    3535 
    3636#define WI_ARRAY(array, i)                              wi_array_data_at_index((array), (i)) 
     37#define wi_array_argv                                   wi_array_create_argv 
    3738 
    3839 
     
    7374WI_EXPORT void                                                  wi_array_get_data_in_range(wi_array_t *, void **, wi_range_t); 
    7475WI_EXPORT wi_string_t *                                 wi_array_components_joined_by_string(wi_array_t *, wi_string_t *); 
    75 WI_EXPORT const char **                                 wi_array_argv(wi_array_t *); 
    7676WI_EXPORT wi_array_t *                                  wi_array_subarray_with_range(wi_array_t *, wi_range_t); 
     77WI_EXPORT const char **                                 wi_array_create_argv(wi_array_t *); 
     78WI_EXPORT void                                                  wi_array_destroy_argv(wi_uinteger_t, const char **); 
    7779 
    7880WI_EXPORT wi_enumerator_t *                             wi_array_data_enumerator(wi_array_t *); 
     
    8385 
    8486WI_EXPORT void                                                  wi_array_add_data(wi_array_t *, void *); 
     87WI_EXPORT wi_array_t *                                  wi_array_by_adding_data(wi_array_t *, void *); 
    8588WI_EXPORT void                                                  wi_array_add_data_sorted(wi_array_t *, void *, wi_compare_func_t *); 
    8689WI_EXPORT void                                                  wi_array_add_data_from_array(wi_array_t *, wi_array_t *); 
     90WI_EXPORT wi_array_t *                                  wi_array_by_adding_data_from_array(wi_array_t *, wi_array_t *); 
    8791WI_EXPORT void                                                  wi_array_insert_data_at_index(wi_array_t *, void *, wi_uinteger_t); 
    8892WI_EXPORT void                                                  wi_array_replace_data_at_index(wi_array_t *, void *, wi_uinteger_t); 
  • libwired/trunk/libwired/system/wi-task.c

    r4660 r5151  
    196196                launch_path = wi_string_cstring(task->launch_path); 
    197197                wi_array_insert_data_at_index(task->arguments, task->launch_path, 0); 
    198                 argv = wi_array_argv(task->arguments); 
     198                argv = wi_array_create_argv(task->arguments); 
    199199                 
    200200                if(execv(launch_path, (char * const *) argv) < 0) {