Use correct types in g_file_get_contents function call, otherwise on 64bit systems it can overwrite other data leading to program crashes.
static void trw_layer_marshall( VikTrwLayer *vtl, guint8 **data, gint *len )
{
- guint8 *pd, *dd;
- gint pl, dl;
+ guint8 *pd;
+ gchar *dd;
+ gsize dl;
+ gint pl;
gchar *tmpname;
FILE *f;
vik_layer_marshall_params(VIK_LAYER(vtl), &pd, &pl);
fclose(f);
f = NULL;
- g_file_get_contents(tmpname, (void *)&dd, (void *)&dl, NULL);
+ g_file_get_contents(tmpname, &dd, &dl, NULL);
*len = sizeof(pl) + pl + dl;
*data = g_malloc(*len);
memcpy(*data, &pl, sizeof(pl));