test fix for drivers crash

pull/28/head
parent 54d6a5a2f4
commit fda1c377d2

@ -2,6 +2,15 @@
config videoconfig; config videoconfig;
// void on_apps_chooser_open(GtkWidget *self){
// int size=0;
// config_str categories=yon_char_parsed_new(NULL,&size,"GTK",NULL);
// config_str names=yon_char_parsed_new(NULL,&size,"XFCE",NULL);
// config_str icons=yon_char_parsed_new(NULL,&size,"org.xfce.panel.Launcher",NULL);
// yon_app_chooser_show(categories,names,icons,size);
// }
void on_subwindow_close(GtkWidget *self) void on_subwindow_close(GtkWidget *self)
{ {
gtk_widget_destroy(gtk_widget_get_toplevel(self)); gtk_widget_destroy(gtk_widget_get_toplevel(self));
@ -1082,6 +1091,7 @@ dictionary *yon_proprieary_get(){
config_str rtn=NULL; config_str rtn=NULL;
rtn = yon_config_load(get_proprietary_drivers_info_command,&size); rtn = yon_config_load(get_proprietary_drivers_info_command,&size);
drivers=yon_config_load(get_proprietary_drivers_local_command,&drivers_size); drivers=yon_config_load(get_proprietary_drivers_local_command,&drivers_size);
printf("LOCALS\n");
if (drivers){ if (drivers){
printf("%s\n",drivers[0]); printf("%s\n",drivers[0]);
for (int drivers_found=0;drivers_found<drivers_size;drivers_found++){ for (int drivers_found=0;drivers_found<drivers_size;drivers_found++){
@ -1632,7 +1642,7 @@ void yon_setup_widgets(widgets_dict *widgets)
g_signal_connect(G_OBJECT(widgets->MainWindow), "destroy", G_CALLBACK(gtk_main_quit), NULL); g_signal_connect(G_OBJECT(widgets->MainWindow), "destroy", G_CALLBACK(gtk_main_quit), NULL);
// g_signal_connect(G_OBJECT(widgets->extraOptirunChooseAppsButton), "clicked", G_CALLBACK(on_apps_chooser_open), widgets); // g_signal_connect(G_OBJECT(widgets->extraOptirunChooseAppsButton), "clicked", G_CALLBACK(on_apps_chooser_open), NULL);
// g_signal_connect(G_OBJECT(widgets->extraPrimusunChooseAppsButton), "clicked", G_CALLBACK(on_apps_chooser_open), widgets); // g_signal_connect(G_OBJECT(widgets->extraPrimusunChooseAppsButton), "clicked", G_CALLBACK(on_apps_chooser_open), widgets);
g_signal_connect(G_OBJECT(widgets->mainHeaderSettingsAboutMenuItem), "activate", G_CALLBACK(on_about), NULL); g_signal_connect(G_OBJECT(widgets->mainHeaderSettingsAboutMenuItem), "activate", G_CALLBACK(on_about), NULL);
@ -1787,7 +1797,7 @@ int main(int argc, char *argv[])
} }
} }
if (getuid()!=0){ if (getuid()==0){
char *args=""; char *args="";
for (int i=0;i<argc;i++) for (int i=0;i<argc;i++)
args=yon_char_unite(args," ",argv[i],NULL); args=yon_char_unite(args," ",argv[i],NULL);

@ -17,6 +17,7 @@
#include <libintl.h> #include <libintl.h>
#include <time.h> #include <time.h>
#include "ubl-utils.h" #include "ubl-utils.h"
// #include "ubl-settings-app-chooser.h"
#include "ubl-settings-video-strings.h" #include "ubl-settings-video-strings.h"
#ifndef UBL_SETINGS_VIDEO_H #ifndef UBL_SETINGS_VIDEO_H
#define UBL_SETINGS_VIDEO_H #define UBL_SETINGS_VIDEO_H

@ -465,6 +465,7 @@ char *yon_char_divide_search(char *source, char *dividepos, int delete_divider)
return source; return source;
} }
} }
/**[EN] /**[EN]
* char *yon_char_from_int(int int_to_convert) * char *yon_char_from_int(int int_to_convert)
* converts int to char*. * converts int to char*.
@ -559,6 +560,42 @@ int yon_char_parsed_check_exist(char **parameters, int size, char *param){
return -1; return -1;
} }
int yon_char_parsed_includes_char_parsed (config_str source, config_str to_check, int source_size, int check_size){
int overall_found=0;
for (int i=0;i<source_size;i++){
int found=0;
for (int j=0;j<check_size;j++){
if (strcmp(source[i],to_check[j])==0&&found==0) { found=1; overall_found++; }
}
}
if (overall_found==check_size)
return 1;
else return 0;
}
config_str yon_char_parsed_new (config_str old, int *old_size, ...){
va_list arglist;
int new_size=0;
config_str new_parsed=NULL;
if (old){
new_size=*old_size;
new_parsed=old;
}else {
new_parsed=new(char*);
}
va_start(arglist,old_size);
char *newparse = va_arg(arglist,char*);
while (newparse){
new_size++;
new_parsed=realloc(new_parsed,new_size*sizeof(char*));
new_parsed[new_size-1]=yon_char_new(newparse);
newparse=va_arg(arglist,char*);
}
va_end(arglist);
*old_size=new_size;
return new_parsed;
}
// parsing functions // parsing functions
@ -707,7 +744,6 @@ config_str yon_config_load(char *command, int *str_len)
} }
} }
/**[EN] /**[EN]
* int yon_config_save(char *command) * int yon_config_save(char *command)
* Saves config with [command] * Saves config with [command]

@ -135,7 +135,9 @@ int yon_char_parsed_check_exist(char **parameters, int size, char *param);
int yon_char_find_count(char *source, char *find); int yon_char_find_count(char *source, char *find);
int yon_char_parsed_includes_char_parsed (config_str source, config_str to_check, int source_size, int check_size);
config_str yon_char_parsed_new (config_str old, int *old_size, ...);
// parsing functions // parsing functions

@ -1894,11 +1894,13 @@ translated and supported by community.</property>
</child> </child>
<child> <child>
<object class="GtkBox"> <object class="GtkBox">
<property name="visible">True</property>
<property name="can-focus">False</property> <property name="can-focus">False</property>
<property name="orientation">vertical</property> <property name="orientation">vertical</property>
<property name="spacing">5</property> <property name="spacing">5</property>
<child> <child>
<object class="GtkButton" id="extraOptirunChooseAppsButton"> <object class="GtkButton" id="extraOptirunChooseAppsButton">
<property name="visible">True</property>
<property name="sensitive">False</property> <property name="sensitive">False</property>
<property name="can-focus">True</property> <property name="can-focus">True</property>
<property name="receives-default">True</property> <property name="receives-default">True</property>
@ -1912,6 +1914,7 @@ translated and supported by community.</property>
</child> </child>
<child> <child>
<object class="GtkButton" id="extraPrimusunChooseAppsButton"> <object class="GtkButton" id="extraPrimusunChooseAppsButton">
<property name="visible">True</property>
<property name="sensitive">False</property> <property name="sensitive">False</property>
<property name="can-focus">True</property> <property name="can-focus">True</property>
<property name="receives-default">True</property> <property name="receives-default">True</property>

Loading…
Cancel
Save