mirror of
https://github.com/git/git
synced 2024-08-26 11:09:18 +00:00
![Thomas Rast](/assets/img/avatar_default.png)
The existing code was too defensive, and would trigger the assert in range_set_append() if the user gave overlapping ranges. The intent was always to define overlapping ranges as just the union of all of them, as evidenced by the call to sort_and_merge_range_set(). (Which was already used, unlike what the comment said.) Fix by splitting out the meat of range_set_append() to a new _unsafe() function that lacks the paranoia. sort_and_merge_range_set will fix up the ranges, so we don't need the checks there. Signed-off-by: Thomas Rast <trast@inf.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com>
188 lines
2.5 KiB
Plaintext
188 lines
2.5 KiB
Plaintext
commit 4659538844daa2849b1a9e7d6fadb96fcd26fc83
|
|
Author: Thomas Rast <trast@student.ethz.ch>
|
|
Date: Thu Feb 28 10:48:43 2013 +0100
|
|
|
|
change back to complete line
|
|
|
|
diff --git a/a.c b/a.c
|
|
--- a/a.c
|
|
+++ b/a.c
|
|
@@ -4,19 +4,21 @@
|
|
long f(long x)
|
|
{
|
|
int s = 0;
|
|
while (x) {
|
|
x >>= 1;
|
|
s++;
|
|
}
|
|
return s;
|
|
}
|
|
|
|
/*
|
|
* This is only an example!
|
|
*/
|
|
|
|
int main ()
|
|
{
|
|
printf("%ld\n", f(15));
|
|
return 0;
|
|
-}
|
|
\ No newline at end of file
|
|
+}
|
|
+
|
|
+/* incomplete lines are bad! */
|
|
|
|
commit 100b61a6f2f720f812620a9d10afb3a960ccb73c
|
|
Author: Thomas Rast <trast@student.ethz.ch>
|
|
Date: Thu Feb 28 10:48:10 2013 +0100
|
|
|
|
change to an incomplete line at end
|
|
|
|
diff --git a/a.c b/a.c
|
|
--- a/a.c
|
|
+++ b/a.c
|
|
@@ -4,19 +4,19 @@
|
|
long f(long x)
|
|
{
|
|
int s = 0;
|
|
while (x) {
|
|
x >>= 1;
|
|
s++;
|
|
}
|
|
return s;
|
|
}
|
|
|
|
/*
|
|
* This is only an example!
|
|
*/
|
|
|
|
int main ()
|
|
{
|
|
printf("%ld\n", f(15));
|
|
return 0;
|
|
-}
|
|
+}
|
|
\ No newline at end of file
|
|
|
|
commit 39b6eb2d5b706d3322184a169f666f25ed3fbd00
|
|
Author: Thomas Rast <trast@student.ethz.ch>
|
|
Date: Thu Feb 28 10:45:41 2013 +0100
|
|
|
|
touch comment
|
|
|
|
diff --git a/a.c b/a.c
|
|
--- a/a.c
|
|
+++ b/a.c
|
|
@@ -3,19 +3,19 @@
|
|
long f(long x)
|
|
{
|
|
int s = 0;
|
|
while (x) {
|
|
x >>= 1;
|
|
s++;
|
|
}
|
|
return s;
|
|
}
|
|
|
|
/*
|
|
- * A comment.
|
|
+ * This is only an example!
|
|
*/
|
|
|
|
int main ()
|
|
{
|
|
printf("%ld\n", f(15));
|
|
return 0;
|
|
}
|
|
|
|
commit a6eb82647d5d67f893da442f8f9375fd89a3b1e2
|
|
Author: Thomas Rast <trast@student.ethz.ch>
|
|
Date: Thu Feb 28 10:45:16 2013 +0100
|
|
|
|
touch both functions
|
|
|
|
diff --git a/a.c b/a.c
|
|
--- a/a.c
|
|
+++ b/a.c
|
|
@@ -3,19 +3,19 @@
|
|
-int f(int x)
|
|
+long f(long x)
|
|
{
|
|
int s = 0;
|
|
while (x) {
|
|
x >>= 1;
|
|
s++;
|
|
}
|
|
return s;
|
|
}
|
|
|
|
/*
|
|
* A comment.
|
|
*/
|
|
|
|
int main ()
|
|
{
|
|
- printf("%d\n", f(15));
|
|
+ printf("%ld\n", f(15));
|
|
return 0;
|
|
}
|
|
|
|
commit f04fb20f2c77850996cba739709acc6faecc58f7
|
|
Author: Thomas Rast <trast@student.ethz.ch>
|
|
Date: Thu Feb 28 10:44:55 2013 +0100
|
|
|
|
change f()
|
|
|
|
diff --git a/a.c b/a.c
|
|
--- a/a.c
|
|
+++ b/a.c
|
|
@@ -3,18 +3,19 @@
|
|
int f(int x)
|
|
{
|
|
int s = 0;
|
|
while (x) {
|
|
x >>= 1;
|
|
s++;
|
|
}
|
|
+ return s;
|
|
}
|
|
|
|
/*
|
|
* A comment.
|
|
*/
|
|
|
|
int main ()
|
|
{
|
|
printf("%d\n", f(15));
|
|
return 0;
|
|
}
|
|
|
|
commit de4c48ae814792c02a49c4c3c0c757ae69c55f6a
|
|
Author: Thomas Rast <trast@student.ethz.ch>
|
|
Date: Thu Feb 28 10:44:48 2013 +0100
|
|
|
|
initial
|
|
|
|
diff --git a/a.c b/a.c
|
|
--- /dev/null
|
|
+++ b/a.c
|
|
@@ -0,0 +3,18 @@
|
|
+int f(int x)
|
|
+{
|
|
+ int s = 0;
|
|
+ while (x) {
|
|
+ x >>= 1;
|
|
+ s++;
|
|
+ }
|
|
+}
|
|
+
|
|
+/*
|
|
+ * A comment.
|
|
+ */
|
|
+
|
|
+int main ()
|
|
+{
|
|
+ printf("%d\n", f(15));
|
|
+ return 0;
|
|
+}
|