diff --git a/packages/core/src/render3/node_manipulation.ts b/packages/core/src/render3/node_manipulation.ts
index 2c1ed5c056..1dba574c07 100644
--- a/packages/core/src/render3/node_manipulation.ts
+++ b/packages/core/src/render3/node_manipulation.ts
@@ -671,7 +671,12 @@ function getFirstNativeNode(lView: LView, tNode: TNode | null): RNode|null {
const lContainer = lView[tNode.index];
if (lContainer.length > CONTAINER_HEADER_OFFSET) {
const firstView = lContainer[CONTAINER_HEADER_OFFSET];
- return getFirstNativeNode(firstView, firstView[TVIEW].firstChild);
+ const firstTNodeOfView = firstView[TVIEW].firstChild;
+ if (firstTNodeOfView !== null) {
+ return getFirstNativeNode(firstView, firstTNodeOfView);
+ } else {
+ return lContainer[NATIVE];
+ }
} else {
return lContainer[NATIVE];
}
diff --git a/packages/core/test/acceptance/view_insertion_spec.ts b/packages/core/test/acceptance/view_insertion_spec.ts
index fadc44211c..862e23c725 100644
--- a/packages/core/test/acceptance/view_insertion_spec.ts
+++ b/packages/core/test/acceptance/view_insertion_spec.ts
@@ -263,15 +263,7 @@ describe('view insertion', () => {
}
describe('before embedded view', () => {
- @Component({
- selector: 'test-cmpt',
- template: `
-