diff --git a/components/common/tlv/test/tlv_tests.cpp b/components/common/tlv/test/tlv_tests.cpp
index 661a810..5d8a50d 100644
--- a/components/common/tlv/test/tlv_tests.cpp
+++ b/components/common/tlv/test/tlv_tests.cpp
@@ -76,6 +76,26 @@
     UNSIGNED_LONGS_EQUAL(1, decoded_record.length);
 }
 
+TEST(TlvTests, findAndDecodeMissingOptional)
+{
+    struct tlv_const_iterator iter;
+    struct tlv_record decoded_record;
+
+    /*
+     * Checks finding a missing record is correctly
+     * identified as not present but that the following
+     * record is found.
+     */
+    const uint8_t encoded_records[] = {
+        0x00, 0x07, 0x00, 0x02, 0x77, 0x77
+    };
+
+    tlv_const_iterator_begin(&iter, encoded_records, sizeof(encoded_records));
+    CHECK(!tlv_find_decode(&iter, 0x0001, &decoded_record));
+    CHECK(tlv_find_decode(&iter, 0x0007, &decoded_record));
+    CHECK_EQUAL(2, decoded_record.length);
+}
+
 TEST(TlvTests, decodeBadRecords)
 {
     struct tlv_const_iterator iter;
diff --git a/components/common/tlv/tlv.c b/components/common/tlv/tlv.c
index 1308832..80c1edb 100644
--- a/components/common/tlv/tlv.c
+++ b/components/common/tlv/tlv.c
@@ -82,10 +82,13 @@
 
 bool tlv_find_decode(struct tlv_const_iterator *iter, uint16_t tag, struct tlv_record *output)
 {
-    while (tlv_decode(iter, output)) {
+    struct tlv_const_iterator temp_iter = *iter;
+
+    while (tlv_decode(&temp_iter, output)) {
 
         if (output->tag == tag) {
-            /* Found a record  */
+            /* Found a record - update input iterator to next record */
+            *iter = temp_iter;
             return true;
         }
         else if (output->tag > tag) {
