diff --git a/ini.go b/ini.go
index f9aea2e..e714d3d 100644
--- a/ini.go
+++ b/ini.go
@@ -98,8 +98,6 @@
 // information on the ini file format. The returned errors can be of the type
 // flags.Error or flags.IniError.
 func (i *IniParser) ParseFile(filename string) error {
-	i.parser.clearIsSet()
-
 	ini, err := readIniFromFile(filename)
 
 	if err != nil {
@@ -134,8 +132,6 @@
 //
 // The returned errors can be of the type flags.Error or flags.IniError.
 func (i *IniParser) Parse(reader io.Reader) error {
-	i.parser.clearIsSet()
-
 	ini, err := readIni(reader, "")
 
 	if err != nil {
diff --git a/ini_test.go b/ini_test.go
index 1d25d45..e1f22ce 100644
--- a/ini_test.go
+++ b/ini_test.go
@@ -846,6 +846,29 @@
 	assertString(t, opts.ValueWithDefaultOverrideCli, "cli-value")
 }
 
+func TestIniRequired(t *testing.T) {
+	var opts struct {
+		Required string               `short:"r" required:"yes" description:"required"`
+		Config   func(s string) error `long:"config" default:"no-ini-file" no-ini:"true"`
+	}
+
+	p := NewParser(&opts, Default)
+
+	opts.Config = func(s string) error {
+		inip := NewIniParser(p)
+		inip.ParseAsDefaults = true
+		return inip.Parse(strings.NewReader("Required = ini-value\n"))
+	}
+
+	_, err := p.ParseArgs([]string{"-r", "cli-value"})
+
+	if err != nil {
+		t.Fatalf("Failed to parse arguments: %s", err)
+	}
+
+	assertString(t, opts.Required, "cli-value")
+}
+
 func TestWriteFile(t *testing.T) {
 	file, err := ioutil.TempFile("", "")
 	if err != nil {
