<feed xmlns='http://www.w3.org/2005/Atom'>
<title>user/sven/git.git/http-push.c, branch v1.5.6.4</title>
<subtitle>Git
</subtitle>
<id>https://git.stealer.net/cgit.cgi/user/sven/git.git/atom?h=v1.5.6.4</id>
<link rel='self' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/atom?h=v1.5.6.4'/>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/'/>
<updated>2008-06-08T20:46:37Z</updated>
<entry>
<title>http-push.c: remove duplicated code</title>
<updated>2008-06-08T20:46:37Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2008-06-07T18:39:20Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=d633c882db7cc79bf2d33df99cb0d1c2ef28c15d'/>
<id>urn:sha1:d633c882db7cc79bf2d33df99cb0d1c2ef28c15d</id>
<content type='text'>
An earlier commit aa1dbc9 (Update http-push functionality, 2006-03-07)
borrowed some code from rev-list.c.

This copy and paste made sense back then, because mark_edges_uninteresting(),
and its helper mark_edge_parents_uninteresting(), accessed a file scope
static variable  "revs" in rev-list.c, and http-push.c did not have nor care
about such a variable.

But these days they are already properly libified and live in list-objects.c
and they take "revs" as as an argument.  Make use of them and lose 20 or
so lines.

Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>rollback lock files on more signals than just SIGINT</title>
<updated>2008-05-31T21:33:59Z</updated>
<author>
<name>Paolo Bonzini</name>
<email>bonzini@gnu.org</email>
</author>
<published>2008-05-29T14:55:53Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=ad5fa3cc0e115a8b111868af2f727322feb144cb'/>
<id>urn:sha1:ad5fa3cc0e115a8b111868af2f727322feb144cb</id>
<content type='text'>
Other signals are also common, for example SIGTERM and SIGHUP.
This patch modifies the lock file mechanism to catch more signals.
It also modifies http-push.c which was missing SIGTERM.

Signed-off-by: Paolo Bonzini &lt;bonzini@gnu.org&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>http-push: remove remote locks on exit signals</title>
<updated>2008-05-25T20:07:24Z</updated>
<author>
<name>Clemens Buchacher</name>
<email>drizzd@aon.at</email>
</author>
<published>2008-05-25T18:27:44Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=6a491a176593a9ab3bd7ff24ef12323371671112'/>
<id>urn:sha1:6a491a176593a9ab3bd7ff24ef12323371671112</id>
<content type='text'>
If locks are not cleaned up the repository is inaccessible for 10 minutes.

Signed-off-by: Clemens Buchacher &lt;drizzd@aon.at&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>alloc_ref_from_str(): factor out a common pattern of alloc_ref from string</title>
<updated>2008-05-11T16:04:37Z</updated>
<author>
<name>Krzysztof Kowalczyk</name>
<email>kkowalczyk@gmail.com</email>
</author>
<published>2008-05-10T23:26:58Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=737922aa648c43bc6a61170bee5bfd46ff953f32'/>
<id>urn:sha1:737922aa648c43bc6a61170bee5bfd46ff953f32</id>
<content type='text'>
Also fix an underallocation in walker.c::interpret_target().

Signed-off-by: Krzysztof Kowalczyk &lt;kkowalczyk@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Make walker.fetch_ref() take a struct ref.</title>
<updated>2008-04-27T00:36:17Z</updated>
<author>
<name>Daniel Barkalow</name>
<email>barkalow@iabervon.org</email>
</author>
<published>2008-04-26T19:53:09Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=c13b2633f49e3e61b37973204793a4d9ef981175'/>
<id>urn:sha1:c13b2633f49e3e61b37973204793a4d9ef981175</id>
<content type='text'>
This simplifies a few things, makes a few things slightly more
complicated, but, more importantly, allows that, when struct ref can
represent a symref, http_fetch_ref() can return one.

Incidentally makes the string that http_fetch_ref() gets include "refs/"
(if appropriate), because that's how the name field of struct ref works.
As far as I can tell, the usage in walker:interpret_target() wouldn't have
worked previously, if it ever would have been used, which it wouldn't
(since the fetch process uses the hash instead of the name of the ref
there).

Signed-off-by: Daniel Barkalow &lt;barkalow@iabervon.org&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'mh/maint-http-proxy-fix'</title>
<updated>2008-03-02T23:11:26Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2008-03-02T23:11:26Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=7ab9f8f8b12853d4cb0e45031bf2ee9a0517ad22'/>
<id>urn:sha1:7ab9f8f8b12853d4cb0e45031bf2ee9a0517ad22</id>
<content type='text'>
* mh/maint-http-proxy-fix:
  Set proxy override with http_init()
</content>
</entry>
<entry>
<title>Merge branch 'cb/http-test'</title>
<updated>2008-03-02T23:11:23Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2008-03-02T23:11:23Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=d82b21b57a50f7820c57a13c09232077365095c7'/>
<id>urn:sha1:d82b21b57a50f7820c57a13c09232077365095c7</id>
<content type='text'>
* cb/http-test:
  http-push: add regression tests
  http-push: push &lt;remote&gt; :&lt;branch&gt; deletes remote branch
</content>
</entry>
<entry>
<title>http-push: push &lt;remote&gt; :&lt;branch&gt; deletes remote branch</title>
<updated>2008-02-27T23:38:24Z</updated>
<author>
<name>Clemens Buchacher</name>
<email>drizzd@aon.at</email>
</author>
<published>2008-02-27T19:27:53Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=6eaf40608dfe0c23aa990a8c7d4a135df1af3cab'/>
<id>urn:sha1:6eaf40608dfe0c23aa990a8c7d4a135df1af3cab</id>
<content type='text'>
This mirrors current ssh/git push syntax.

Signed-off-by: Clemens Buchacher &lt;drizzd@aon.at&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Set proxy override with http_init()</title>
<updated>2008-02-27T23:37:57Z</updated>
<author>
<name>Mike Hommey</name>
<email>mh@glandium.org</email>
</author>
<published>2008-02-27T20:35:50Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=9fc6440d783ca773353880aa97c23ed9c640d3c0'/>
<id>urn:sha1:9fc6440d783ca773353880aa97c23ed9c640d3c0</id>
<content type='text'>
In transport.c, proxy setting (the one from the remote conf) was set through
curl_easy_setopt() call, while http.c already does the same with the
http.proxy setting. We now just use this infrastructure instead, and make
http_init() now take the struct remote as argument so that it can take the
http_proxy setting from there, and any other property that would be added
later.

At the same time, we make get_http_walker() take a struct remote argument
too, and pass it to http_init(), which makes remote defined proxy be used
for more than get_refs_via_curl().

We leave out http-fetch and http-push, which don't use remotes for the
moment, purposefully.

Signed-off-by: Mike Hommey &lt;mh@glandium.org&gt;
Acked-by: Daniel Barkalow &lt;barkalow@iabervon.org&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Avoid unnecessary "if-before-free" tests.</title>
<updated>2008-02-22T22:14:40Z</updated>
<author>
<name>Jim Meyering</name>
<email>meyering@redhat.com</email>
</author>
<published>2008-01-31T17:26:32Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/git.git/commit/?id=8e0f70033b2bd1679a6e5971978fdc3ee09bdb72'/>
<id>urn:sha1:8e0f70033b2bd1679a6e5971978fdc3ee09bdb72</id>
<content type='text'>
This change removes all obvious useless if-before-free tests.
E.g., it replaces code like this:

        if (some_expression)
                free (some_expression);

with the now-equivalent:

        free (some_expression);

It is equivalent not just because POSIX has required free(NULL)
to work for a long time, but simply because it has worked for
so long that no reasonable porting target fails the test.
Here's some evidence from nearly 1.5 years ago:

    http://www.winehq.org/pipermail/wine-patches/2006-October/031544.html

FYI, the change below was prepared by running the following:

  git ls-files -z | xargs -0 \
  perl -0x3b -pi -e \
    's/\bif\s*\(\s*(\S+?)(?:\s*!=\s*NULL)?\s*\)\s+(free\s*\(\s*\1\s*\))/$2/s'

Note however, that it doesn't handle brace-enclosed blocks like
"if (x) { free (x); }".  But that's ok, since there were none like
that in git sources.

Beware: if you do use the above snippet, note that it can
produce syntactically invalid C code.  That happens when the
affected "if"-statement has a matching "else".
E.g., it would transform this

  if (x)
    free (x);
  else
    foo ();

into this:

  free (x);
  else
    foo ();

There were none of those here, either.

If you're interested in automating detection of the useless
tests, you might like the useless-if-before-free script in gnulib:
[it *does* detect brace-enclosed free statements, and has a --name=S
 option to make it detect free-like functions with different names]

  http://git.sv.gnu.org/gitweb/?p=gnulib.git;a=blob;f=build-aux/useless-if-before-free

Addendum:
  Remove one more (in imap-send.c), spotted by Jean-Luc Herren &lt;jlh@gmx.ch&gt;.

Signed-off-by: Jim Meyering &lt;meyering@redhat.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
</feed>
