diff --git a/Tests/HtmlPageCrawlerTest.php b/Tests/HtmlPageCrawlerTest.php
index aebdefa..e9510e0 100644
--- a/Tests/HtmlPageCrawlerTest.php
+++ b/Tests/HtmlPageCrawlerTest.php
@@ -260,6 +260,10 @@ public function testPrepend()
$c = new HtmlPageCrawler('
');
$c->filter('#content')->prepend(new HtmlPageCrawler('Text before h1
and more text before
'));
$this->assertEquals('Text before h1
and more text before
', $c->saveHTML());
+
+ $c = new HtmlPageCrawler('Prepend Self
');
+ $c->filter('#content')->prepend($c->filter('span'));
+ $this->assertEquals('Prepend Self
', $c->saveHTML());
}
/**
diff --git a/src/HtmlPageCrawler.php b/src/HtmlPageCrawler.php
index e91cefc..e59c3e5 100644
--- a/src/HtmlPageCrawler.php
+++ b/src/HtmlPageCrawler.php
@@ -483,7 +483,7 @@ public function prepend($content)
$newnode = static::importNewnode($newnode, $node, $i);
if ($refnode === null) {
$node->appendChild($newnode);
- } else {
+ } else if ($refnode !== $newnode) {
$node->insertBefore($newnode, $refnode);
}
$newnodes[] = $newnode;