@@ -3153,6 +3153,15 @@ private module StdlibPrivate {
31533153 .getMember ( "ElementTree" )
31543154 .getMember ( [ "fromstring" , "fromstringlist" , "XML" ] )
31553155 .getReturn ( )
3156+ or
3157+ result =
3158+ API:: moduleImport ( "xml" )
3159+ .getMember ( "etree" )
3160+ .getMember ( "ElementTree" )
3161+ .getMember ( "XMLParser" )
3162+ .getReturn ( )
3163+ .getMember ( "close" )
3164+ .getReturn ( )
31563165 }
31573166
31583167 /**
@@ -3255,6 +3264,7 @@ private module StdlibPrivate {
32553264 * - `xml.etree.ElementTree.XMLID`
32563265 * - `xml.etree.ElementTree.parse`
32573266 * - `xml.etree.ElementTree.iterparse`
3267+ * - `parse` method on an `xml.etree.ElementTree.ElementTree` instance
32583268 *
32593269 * See
32603270 * - https://docs.python.org/3/library/xml.etree.elementtree.html#xml.etree.ElementTree.fromstring
@@ -3272,6 +3282,8 @@ private module StdlibPrivate {
32723282 .getMember ( "ElementTree" )
32733283 .getMember ( [ "fromstring" , "fromstringlist" , "XML" , "XMLID" , "parse" , "iterparse" ] )
32743284 .getACall ( )
3285+ or
3286+ this = elementTreeInstance ( ) .getMember ( "parse" ) .getACall ( )
32753287 }
32763288
32773289 override DataFlow:: Node getAnInput ( ) {
@@ -3321,6 +3333,8 @@ private module StdlibPrivate {
33213333 .getMember ( "ElementTree" )
33223334 .getMember ( [ "parse" , "iterparse" ] )
33233335 .getACall ( )
3336+ or
3337+ this = elementTreeInstance ( ) .getMember ( "parse" ) .getACall ( )
33243338 // I considered whether we should try to reduce FPs from people passing file-like
33253339 // objects, which will not be a file system access (and couldn't cause a
33263340 // path-injection).
0 commit comments