diff --git a/ini_test.go b/ini_test.go
index 492d10f..39d88be 100644
--- a/ini_test.go
+++ b/ini_test.go
@@ -953,6 +953,7 @@
 	var tests = []struct {
 		args     []string
 		expected string
+		toggled  bool
 	}{
 		{
 			args:     []string{},
@@ -965,14 +966,22 @@
 		{
 			args:     []string{"--config", "no file name"},
 			expected: "from INI",
+			toggled:  true,
 		},
 		{
 			args:     []string{"--value", "from CLI before", "--config", "no file name"},
 			expected: "from CLI before",
+			toggled:  true,
 		},
 		{
 			args:     []string{"--config", "no file name", "--value", "from CLI after"},
 			expected: "from CLI after",
+			toggled:  true,
+		},
+		{
+			args:     []string{"--toggle"},
+			toggled:  true,
+			expected: "from default",
 		},
 	}
 
@@ -980,6 +989,7 @@
 		var opts struct {
 			Config string `long:"config" no-ini:"true"`
 			Value  string `long:"value" default:"from default" ini-override:"true"`
+			Toggle bool   `long:"toggle" ini-override:"true"`
 		}
 
 		p := NewParser(&opts, Default)
@@ -990,7 +1000,7 @@
 		}
 
 		if opts.Config != "" {
-			err = NewIniParser(p).Parse(bytes.NewBufferString("value = from INI"))
+			err = NewIniParser(p).Parse(bytes.NewBufferString("value = from INI\ntoggle = true"))
 			if err != nil {
 				t.Fatalf("Unexpected error %s with args %+v", err, test.args)
 			}
@@ -1000,5 +1010,9 @@
 			t.Fatalf("Expected Value to be \"%s\" but was \"%s\" with args %+v", test.expected, opts.Value, test.args)
 		}
 
+		if opts.Toggle != test.toggled {
+			t.Fatalf("Expected Toggle to be \"%v\" but was \"%v\" with args %+v", test.toggled, opts.Toggle, test.args)
+		}
+
 	}
 }
diff --git a/option.go b/option.go
index 8be7a27..2f41d85 100644
--- a/option.go
+++ b/option.go
@@ -261,9 +261,9 @@
 		}
 	}
 
+	option.isSetDefault = true
 	if len(usedDefault) > 0 {
 		option.empty()
-		option.isSetDefault = true
 
 		for _, d := range usedDefault {
 			option.set(&d)
