From: arsharma <[email protected]> Issue was spotted by Klocwork, and fixed by arsharma as part of Android-ia.
Just bail out if memory allocation fails. All the callers of insert() already handle the case. [Emil Velikov: Split from larger patch, write commit message] Signed-off-by: Emil Velikov <[email protected]> --- src/common_device_name.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/common_device_name.c b/src/common_device_name.c index a990ac8..3dd35d7 100644 --- a/src/common_device_name.c +++ b/src/common_device_name.c @@ -154,6 +154,10 @@ insert( uint16_t vendor ) if ( tree == NULL ) { tree = calloc( 1, sizeof( struct pci_id_node ) ); + + if ( tree == NULL ) + return NULL; + tree->bits = 4; } @@ -175,6 +179,9 @@ insert( uint16_t vendor ) struct pci_id_node * child = calloc( 1, sizeof( struct pci_id_node ) ); + if ( tree == NULL ) + return NULL; + child->bits = 4; n->children[ idx ] = child; @@ -183,6 +190,9 @@ insert( uint16_t vendor ) struct pci_id_leaf * leaf = calloc( 1, sizeof( struct pci_id_leaf ) ); + if ( tree == NULL ) + return NULL; + leaf->vendor = vendor; n->children[ idx ] = (struct pci_id_node *) leaf; -- 2.3.0 _______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
