diff --git a/add_trailing_comma.py b/add_trailing_comma.py
index 9eaa33f..34e1012 100644
--- a/add_trailing_comma.py
+++ b/add_trailing_comma.py
@@ -271,7 +271,7 @@ def _fix_brace(fix_data, add_comma, tokens):
             # Don't unhug single element things with a multi-line component
             # inside.
             not fix_data.multi_arg and
-            hug_open and
+            tokens[first_brace + 1].src in START_BRACES and
             tokens[last_brace - 1].src in END_BRACES or
             # Don't unhug when containing a single token (such as a triple
             # quoted string).

diff --git a/tests/add_trailing_comma_test.py b/tests/add_trailing_comma_test.py
index fa4593d..9fde7b4 100644
--- a/tests/add_trailing_comma_test.py
+++ b/tests/add_trailing_comma_test.py
@@ -594,6 +594,17 @@ def test_noop_unhugs(src):
             '    )\n'
             ']',
         ),
+        pytest.param(
+            'x = [x\n'
+            '     for x in y()]\n',
+
+            'x = [\n'
+            '    x\n'
+            '    for x in y()\n'
+            ']\n',
+
+            id='#42: listcomp unhug ends in brace',
+        ),
     ),
 )
 def test_fix_unhugs(src, expected):

False negative with statement ending with parens
```python
if (foo and
    bar()):
    pass
```

I expect to be rewritten to

```python
if (
    foo and
    bar()
):
    pass
```

But I imagine the same code that prevents this from being rewritten is firing:

```python
foo('bar {}'.format(
    'baz',
))
```

which I don't think should be rewritten.

Need to come up with a more clever heuristic here.
tests/add_trailing_comma_test.py::test_fix_unhugs[#42:
tests/add_trailing_comma_test.py::test_fix_calls_noops[x tests/add_trailing_comma_test.py::test_fix_calls_noops[x(1)] tests/add_trailing_comma_test.py::test_fix_calls_noops[tuple(\n tests/add_trailing_comma_test.py::test_fix_calls_noops[x(\n tests/add_trailing_comma_test.py::test_fix_calls_noops[x((\n tests/add_trailing_comma_test.py::test_fix_calls_noops[(\n tests/add_trailing_comma_test.py::test_py35_plus_rewrite tests/add_trailing_comma_test.py::test_fixes_calls[x(\n tests/add_trailing_comma_test.py::test_fixes_calls[foo()(\n tests/add_trailing_comma_test.py::test_fixes_calls[x({}).y(\n tests/add_trailing_comma_test.py::test_fixes_calls[(\n tests/add_trailing_comma_test.py::test_noop_literals[(1, tests/add_trailing_comma_test.py::test_noop_literals[[1, tests/add_trailing_comma_test.py::test_noop_literals[{1, tests/add_trailing_comma_test.py::test_noop_literals[{1: tests/add_trailing_comma_test.py::test_noop_literals[if tests/add_trailing_comma_test.py::test_fixes_literals[x tests/add_trailing_comma_test.py::test_fixes_py35_plus_literals[x tests/add_trailing_comma_test.py::test_noop_tuple_literal_without_braces tests/add_trailing_comma_test.py::test_noop_function_defs[def tests/add_trailing_comma_test.py::test_fixes_defs[def tests/add_trailing_comma_test.py::test_fixes_defs_py36_plus[def tests/add_trailing_comma_test.py::test_noop_unhugs[f(x, tests/add_trailing_comma_test.py::test_noop_unhugs[f(\n tests/add_trailing_comma_test.py::test_noop_unhugs[f((\n tests/add_trailing_comma_test.py::test_noop_unhugs[f([\n tests/add_trailing_comma_test.py::test_noop_unhugs[textwrap.dedent("""\n tests/add_trailing_comma_test.py::test_fix_unhugs[f(\n tests/add_trailing_comma_test.py::test_fix_unhugs[f(a,\n tests/add_trailing_comma_test.py::test_fix_unhugs[def tests/add_trailing_comma_test.py::test_fix_unhugs[with tests/add_trailing_comma_test.py::test_fix_unhugs[if tests/add_trailing_comma_test.py::test_fix_unhugs[{'foo': tests/add_trailing_comma_test.py::test_fix_unhugs[f(g(\n tests/add_trailing_comma_test.py::test_fix_unhugs[{"foo": tests/add_trailing_comma_test.py::test_fix_unhugs[x tests/add_trailing_comma_test.py::test_fix_unhugs[x("foo", tests/add_trailing_comma_test.py::test_fix_unhugs[x("foo"\n tests/add_trailing_comma_test.py::test_fix_unhugs[[a()\n tests/add_trailing_comma_test.py::test_fix_unhugs_py3_only[def tests/add_trailing_comma_test.py::test_noop_trailing_brace[[]] tests/add_trailing_comma_test.py::test_noop_trailing_brace[x tests/add_trailing_comma_test.py::test_noop_trailing_brace[y tests/add_trailing_comma_test.py::test_noop_trailing_brace[foo.\\\n tests/add_trailing_comma_test.py::test_fix_trailing_brace[x tests/add_trailing_comma_test.py::test_fix_from_import_noop[from tests/add_trailing_comma_test.py::test_fix_from_import[from tests/add_trailing_comma_test.py::test_fix_from_import[if tests/add_trailing_comma_test.py::test_fix_classes_noop[class tests/add_trailing_comma_test.py::test_fix_classes[class tests/add_trailing_comma_test.py::test_fix_classes_py3_only_syntax[bases tests/add_trailing_comma_test.py::test_fix_classes_py3_only_syntax[kws tests/add_trailing_comma_test.py::test_fix_classes_py3_only_syntax[class tests/add_trailing_comma_test.py::test_main_trivial tests/add_trailing_comma_test.py::test_main_noop tests/add_trailing_comma_test.py::test_main_changes_a_file tests/add_trailing_comma_test.py::test_main_preserves_line_endings tests/add_trailing_comma_test.py::test_main_syntax_error tests/add_trailing_comma_test.py::test_main_non_utf8_bytes tests/add_trailing_comma_test.py::test_main_py35_plus_argument_star_args tests/add_trailing_comma_test.py::test_main_py35_plus_argument_star_star_kwargs tests/add_trailing_comma_test.py::test_main_py36_plus_implies_py35_plus tests/add_trailing_comma_test.py::test_main_py36_plus_function_trailing_commas