if ('"' == input) {
e.subsection = readValue(in, true, '"');
input = in.read();
}
if (']' != input)
throw new ConfigInvalidException(JGitText.get().badGroupHeader);
e.suffix = ""; //$NON-NLS-1$
} else if (last != null) {
// Read a value.
e.section = last.section;
e.subsection = last.subsection;
in.reset();
e.name = readKeyName(in);
if (e.name.endsWith("\n")) { //$NON-NLS-1$
e.name = e.name.substring(0, e.name.length() - 1);
e.value = MAGIC_EMPTY_VALUE;
} else
e.value = readValue(in, false, -1);
} else
throw new ConfigInvalidException(JGitText.get().invalidLineInConfigFile);
}
state.set(newState(newEntries));
}