naspro
changeset 161:cf56ca881571 trunk
Fixed some bugs
| author | Stefano D'Angelo <zanga.mail@gmail.com> |
|---|---|
| date | Sun Jul 19 03:50:39 2009 +0200 (2009-07-19) |
| parents | 60edbe170fed |
| children | cd3a8040fc02 |
| files | src/ladspa/descriptor.c src/ladspa/lrdf.c |
line diff
1.1 --- a/src/ladspa/descriptor.c Sat Jul 18 19:45:19 2009 +0200 1.2 +++ b/src/ladspa/descriptor.c Sun Jul 19 03:50:39 2009 +0200 1.3 @@ -64,6 +64,9 @@ 1.4 desc->port_descs[i].name = (char *)ldesc->PortNames[i]; 1.5 1.6 desc->port_descs[i].data = NULL; 1.7 + desc->port_descs[i].scale.unit = nacore_scale_unit_none; 1.8 + desc->port_descs[i].scale.points = NULL; 1.9 + desc->port_descs[i].scale.points_count = 0; 1.10 1.11 desc->port_descs[i].properties = 0; 1.12 if (LADSPA_IS_PORT_OUTPUT(ldesc->PortDescriptors[i])) 1.13 @@ -154,11 +157,7 @@ 1.14 desc->port_descs[i].scale.defaultv = 440.0; 1.15 } 1.16 1.17 - desc->port_descs[i].scale.unit = nacore_scale_unit_none; 1.18 _naladspa_lrdf_get_scale_units(desc, desc->port_descs + i, i); 1.19 - 1.20 - desc->port_descs[i].scale.points = NULL; 1.21 - desc->port_descs[i].scale.points_count = 0; 1.22 _naladspa_lrdf_get_scale_points(desc, desc->port_descs + i, i); 1.23 } 1.24
2.1 --- a/src/ladspa/lrdf.c Sat Jul 18 19:45:19 2009 +0200 2.2 +++ b/src/ladspa/lrdf.c Sun Jul 19 03:50:39 2009 +0200 2.3 @@ -510,8 +510,6 @@ 2.4 size_t len, count, i; 2.5 char *prev_locale; 2.6 2.7 - port->scale.points_count = 0; 2.8 - 2.9 if (model == NULL) 2.10 return; 2.11 2.12 @@ -533,11 +531,16 @@ 2.13 scale_node = librdf_statement_get_object( 2.14 librdf_stream_get_object(stream)); 2.15 scale_node2 = librdf_new_node_from_node(scale_node); 2.16 + if (scale_node2 == NULL) 2.17 + goto stream_end; 2.18 2.19 stream2 = model_find_statements_with_subject_node(scale_node2, 2.20 LADSPA_PREFIX "hasPoint", NULL); 2.21 if (stream2 == NULL) 2.22 + { 2.23 + librdf_free_node(scale_node2); 2.24 goto stream_end; 2.25 + } 2.26 2.27 count = 0; 2.28 len = 0; 2.29 @@ -574,6 +577,7 @@ 2.30 2.31 librdf_stream_next(stream2); 2.32 } 2.33 + librdf_free_stream(stream2); 2.34 2.35 if (count == 0) 2.36 goto stream_end; 2.37 @@ -591,6 +595,14 @@ 2.38 } 2.39 2.40 scale_node2 = librdf_new_node_from_node(scale_node); 2.41 + if (scale_node2 == NULL) 2.42 + { 2.43 + free(port->data); 2.44 + port->data = NULL; 2.45 + free(port->scale.points); 2.46 + port->scale.points = NULL; 2.47 + goto stream_end; 2.48 + } 2.49 2.50 stream2 = model_find_statements_with_subject_node(scale_node2, 2.51 LADSPA_PREFIX "hasPoint", NULL); 2.52 @@ -598,6 +610,8 @@ 2.53 { 2.54 free(port->data); 2.55 port->data = NULL; 2.56 + free(port->scale.points); 2.57 + port->scale.points = NULL; 2.58 goto stream_end; 2.59 } 2.60 2.61 @@ -616,6 +630,8 @@ 2.62 librdf_free_stream(stream2); 2.63 free(port->data); 2.64 port->data = NULL; 2.65 + free(port->scale.points); 2.66 + port->scale.points = NULL; 2.67 goto stream_end; 2.68 } 2.69 2.70 @@ -625,6 +641,8 @@ 2.71 librdf_free_stream(stream2); 2.72 free(port->data); 2.73 port->data = NULL; 2.74 + free(port->scale.points); 2.75 + port->scale.points = NULL; 2.76 goto stream_end; 2.77 } 2.78 2.79 @@ -649,6 +667,8 @@ 2.80 librdf_free_stream(stream2); 2.81 free(port->data); 2.82 port->data = NULL; 2.83 + free(port->scale.points); 2.84 + port->scale.points = NULL; 2.85 goto stream_end; 2.86 } 2.87 2.88 @@ -658,6 +678,8 @@ 2.89 librdf_free_stream(stream2); 2.90 free(port->data); 2.91 port->data = NULL; 2.92 + free(port->scale.points); 2.93 + port->scale.points = NULL; 2.94 goto stream_end; 2.95 } 2.96 2.97 @@ -737,6 +759,8 @@ 2.98 void 2.99 _naladspa_lrdf_free_data(struct nacore_port_descriptor *port) 2.100 { 2.101 + if (port->scale.points != NULL) 2.102 + free(port->scale.points); 2.103 if (port->data != NULL) 2.104 free(port->data); 2.105 }
