Changeset 5442:e9a032849792 in roaraudio for roarclients


Ignore:
Timestamp:
03/20/12 23:40:53 (12 years ago)
Author:
phi
Branch:
default
Phase:
public
Message:

use plugin container to do the --run

File:
1 edited

Legend:

Unmodified
Added
Removed
  • roarclients/roarpluginrunner.c

    r5427 r5442  
    5353 
    5454static int do_run(const char * name) { 
    55  struct roar_dl_lhandle * lhandle = roar_dl_open(name, ROAR_DL_FLAG_PLUGIN, 1, g_para); 
    56  
    57  if ( lhandle == NULL ) 
     55 struct roar_plugincontainer * cont = roar_plugincontainer_new(g_para); 
     56 int err; 
     57 
     58 if ( cont == NULL ) 
    5859  return -1; 
    5960 
    60  roar_dl_appsched_trigger(lhandle, ROAR_DL_APPSCHED_INIT); 
    61  
    62  while (roar_dl_appsched_trigger(lhandle, ROAR_DL_APPSCHED_WAIT) == 0) 
    63   roar_dl_appsched_trigger(lhandle, ROAR_DL_APPSCHED_UPDATE); 
    64  
    65  roar_dl_appsched_trigger(lhandle, ROAR_DL_APPSCHED_UPDATE); 
    66  roar_dl_appsched_trigger(lhandle, ROAR_DL_APPSCHED_FREE); 
    67  
    68  roar_dl_unref(lhandle); 
     61 if ( roar_plugincontainer_load(cont, name, NULL) == -1 ) { 
     62  err = roar_error; 
     63  roar_plugincontainer_unref(cont); 
     64  roar_error = err; 
     65  return -1; 
     66 } 
     67 
     68 roar_plugincontainer_appsched_trigger(cont, ROAR_DL_APPSCHED_INIT); 
     69 
     70 while (roar_plugincontainer_appsched_trigger(cont, ROAR_DL_APPSCHED_WAIT) == 0) 
     71  roar_plugincontainer_appsched_trigger(cont, ROAR_DL_APPSCHED_UPDATE); 
     72 
     73 roar_plugincontainer_appsched_trigger(cont, ROAR_DL_APPSCHED_UPDATE); 
     74 roar_plugincontainer_appsched_trigger(cont, ROAR_DL_APPSCHED_FREE); 
     75 
     76 roar_plugincontainer_unref(cont); 
    6977 return 0; 
    7078} 
Note: See TracChangeset for help on using the changeset viewer.