diff options
author | marha <marha@users.sourceforge.net> | 2014-10-01 20:47:44 +0200 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2014-10-01 20:47:44 +0200 |
commit | 30eb28e89e513ba7c04e8424be0cba326a01882b (patch) | |
tree | c84d1ffa742ebc6f077abb20a6b80c56ddaea888 /mesalib/src/mesa/program/symbol_table.c | |
parent | 438af0c7d4bf60b408b259c88205ff2193195466 (diff) | |
download | vcxsrv-30eb28e89e513ba7c04e8424be0cba326a01882b.tar.gz vcxsrv-30eb28e89e513ba7c04e8424be0cba326a01882b.tar.bz2 vcxsrv-30eb28e89e513ba7c04e8424be0cba326a01882b.zip |
libxtrans pixman fontconfig mesa xserver xkeyboard-config git update 1 Oct 2014
plink 10277
xserver commit d3d845ca9e92f0a2ccde93f4242d7769cfe14164
xkeyboard-config commit 73aa90ce32967747c84a1b5fe32cee329bc3bbcf
pixman commit f078727f392bc9f235df916e75634ed87177b9b4
libxtrans commit 7cbad9fe2e61cd9d5caeaf361826a6f4bd320f03
fontconfig commit 1082161ea303cf2bbc13b62a191662984131e820
mesa commit 4f7916ab4f8093fa33519dfa3d08e73b4d35ebe3
Diffstat (limited to 'mesalib/src/mesa/program/symbol_table.c')
-rw-r--r-- | mesalib/src/mesa/program/symbol_table.c | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/mesalib/src/mesa/program/symbol_table.c b/mesalib/src/mesa/program/symbol_table.c index 9462978ee..5b2274593 100644 --- a/mesalib/src/mesa/program/symbol_table.c +++ b/mesalib/src/mesa/program/symbol_table.c @@ -172,6 +172,11 @@ _mesa_symbol_table_push_scope(struct _mesa_symbol_table *table) { struct scope_level *const scope = calloc(1, sizeof(*scope)); + if (scope == NULL) { + _mesa_error_no_memory(__func__); + return; + } + scope->next = table->current_scope; table->current_scope = scope; table->depth++; @@ -254,7 +259,17 @@ _mesa_symbol_table_add_symbol(struct _mesa_symbol_table *table, if (hdr == NULL) { hdr = calloc(1, sizeof(*hdr)); + if (hdr == NULL) { + _mesa_error_no_memory(__func__); + return -1; + } + hdr->name = strdup(name); + if (hdr->name == NULL) { + free(hdr); + _mesa_error_no_memory(__func__); + return -1; + } hash_table_insert(table->ht, hdr, hdr->name); hdr->next = table->hdr; @@ -276,6 +291,11 @@ _mesa_symbol_table_add_symbol(struct _mesa_symbol_table *table, return -1; sym = calloc(1, sizeof(*sym)); + if (sym == NULL) { + _mesa_error_no_memory(__func__); + return -1; + } + sym->next_with_same_name = hdr->symbols; sym->next_with_same_scope = table->current_scope->symbols; sym->hdr = hdr; @@ -311,6 +331,11 @@ _mesa_symbol_table_add_global_symbol(struct _mesa_symbol_table *table, if (hdr == NULL) { hdr = calloc(1, sizeof(*hdr)); + if (hdr == NULL) { + _mesa_error_no_memory(__func__); + return -1; + } + hdr->name = strdup(name); hash_table_insert(table->ht, hdr, hdr->name); @@ -340,6 +365,11 @@ _mesa_symbol_table_add_global_symbol(struct _mesa_symbol_table *table, } sym = calloc(1, sizeof(*sym)); + if (sym == NULL) { + _mesa_error_no_memory(__func__); + return -1; + } + sym->next_with_same_scope = top_scope->symbols; sym->hdr = hdr; sym->name_space = name_space; |