List for cgit developers and users
 help / color / mirror / Atom feed
* [PATCH] ui-blob: don't segfault  when no path is given
@ 2013-04-07 14:06 john
  2013-04-07 14:08 ` Jason
  0 siblings, 1 reply; 2+ messages in thread
From: john @ 2013-04-07 14:06 UTC (permalink / raw)


It it possible to inspect blobs by specifying only the SHA-1, and CGit
provides links to do so, for example if a tag points directly at a blob.
In this case the path_items structure is never used, but creating it
still causes strlen to be run on a null pointer.  Fix this.

This error was introduced by commit c1633c6 (Update git to v1.7.6.5 -
2013-03-02).

Signed-off-by: John Keeping <john at keeping.me.uk>
---
You can see this by inspecting the "larsh-public-key" tag in cgit.git.

I noticed this because I was running under Clang's address sanitizer,
which also meant I had compiled with -O1, I wonder if this could be
optimized away at higher optimization levels.

 ui-blob.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/ui-blob.c b/ui-blob.c
index c59fbcb..7aec0b1 100644
--- a/ui-blob.c
+++ b/ui-blob.c
@@ -80,7 +80,7 @@ void cgit_print_blob(const char *hex, char *path, const char *head)
 	struct commit *commit;
 	struct pathspec_item path_items = {
 		.match = path,
-		.len = strlen(path)
+		.len = path ? strlen(path) : 0
 	};
 	struct pathspec paths = {
 		.nr = 1,
-- 
1.8.2.692.g17a9715





^ permalink raw reply	[flat|nested] 2+ messages in thread

* [PATCH] ui-blob: don't segfault when no path is given
  2013-04-07 14:06 [PATCH] ui-blob: don't segfault when no path is given john
@ 2013-04-07 14:08 ` Jason
  0 siblings, 0 replies; 2+ messages in thread
From: Jason @ 2013-04-07 14:08 UTC (permalink / raw)


Thanks. Merged directly to master.




^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2013-04-07 14:08 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-04-07 14:06 [PATCH] ui-blob: don't segfault when no path is given john
2013-04-07 14:08 ` Jason

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).