diff --git a/tensorflow/c/c_api.cc b/tensorflow/c/c_api.cc
index b24ac8a2f26..36a08c8cfc9 100644
--- a/tensorflow/c/c_api.cc
+++ b/tensorflow/c/c_api.cc
@@ -1386,6 +1386,7 @@ void TF_OperationGetAttrStringList(TF_Operation* oper, const char* attr_name,
     cpp_type v;                                                              \
     status->status =                                                         \
         tensorflow::GetNodeAttr(oper->node.attrs(), attr_name, &v);          \
+    if (!status->status.ok()) return;                                        \
     *value = static_cast<c_type>(v);                                         \
   }                                                                          \
   void func##List(TF_Operation* oper, const char* attr_name, c_type* values, \
diff --git a/tensorflow/python/BUILD b/tensorflow/python/BUILD
index 8ed2b829f81..425ab1f2bbe 100644
--- a/tensorflow/python/BUILD
+++ b/tensorflow/python/BUILD
@@ -4877,9 +4877,6 @@ cuda_py_test(
     srcs = ["ops/control_flow_ops_test.py"],
     python_version = "PY3",
     shard_count = 2,
-    tags = [
-        "noasan",  # b/158098804
-    ],
     deps = [
         ":array_ops",
         ":cond_v2",