git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[JGIT PATCH 5/5] Include the file path when FileBasedConfig.load throws an exception

From
Shawn O. Pearce <spearce@spearce.org>
Date
Jul 29, 2009, 15:50 UTC
Message-ID
<1248882627-7285-6-git-send-email-spearce@spearce.org>
In-Reply-To
<1248882627-7285-5-git-send-email-spearce@spearce.org>

This may help an end-user debug the problem, if they know what file the error occurred in. We have to wrap the exception here because the methods throwing the original error do not have access to the file path, and cannot include it in the message.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
---
 .../src/org/spearce/jgit/lib/FileBasedConfig.java  |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/org.spearce.jgit/src/org/spearce/jgit/lib/FileBasedConfig.java b/org.spearce.jgit/src/org/spearce/jgit/lib/FileBasedConfig.java
index adf85c6..518b31d 100644
--- a/org.spearce.jgit/src/org/spearce/jgit/lib/FileBasedConfig.java
+++ b/org.spearce.jgit/src/org/spearce/jgit/lib/FileBasedConfig.java
@@ -98,6 +98,12 @@ public void load() throws IOException, ConfigInvalidException {
 			fromText(RawParseUtils.decode(NB.readFully(getFile())));
 		} catch (FileNotFoundException noFile) {
 			clear();
+		} catch (IOException e) {
+			final IOException e2 = new IOException("Cannot read " + getFile());
+			e2.initCause(e);
+			throw e2;
+		} catch (ConfigInvalidException e) {
+			throw new ConfigInvalidException("Cannot read " + getFile(), e);
 		}
 	}
 
-- 
1.6.4.rc3.201.gd9d59
Previous: Shawn O. Pearce
Message 6 of 6 in “Some minor bug fixes”
  1. 0/5 Some minor bug fixesShawn O. Pearce, Jul 29, 2009
  2. 1/5 Don't dispose of RevFlag used to advertise objects in ReceivePackShawn O. Pearce, Jul 29, 2009
  3. 2/5 Allow RemoteConfig.getAllRemoteConfigs on any Config objectShawn O. Pearce, Jul 29, 2009
  4. 3/5 Add ConfigInvalidException constructor to take ThrowableShawn O. Pearce, Jul 29, 2009
  5. 4/5 Add no fallback constructor to FileBasedConfigShawn O. Pearce, Jul 29, 2009
  6. 5/5 Include the file path when FileBasedConfig.load throws an exceptionShawn O. Pearce, Jul 29, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.