{"push_id":846351831,"size":61,"distinct_size":0,"ref":"refs/heads/jk/repack-alternates","head":"63f9e25fe809c1207cd3708e7d62d274164a27c3","before":"e116db2ee5026d44ff0772bbd84bc959c2a547fa","commits":[{"sha":"2a5ce7cf0da8c4d97dd58f5cbc6092b394648356","author":{"email":"a6723cc3f76163bf7adb636a73ac3b0ceb3e6b9b@pobox.com","name":"Junio C Hamano"},"message":"mailinfo: remove a no-op call convert_to_utf8(it, \"\")\n\nThe called function checks if the second parameter is either a NULL\nor an empty string at the very beginning and returns without doing\nanything.  Remove the useless call.\n\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/2a5ce7cf0da8c4d97dd58f5cbc6092b394648356"},{"sha":"3a8fcdaf844910578d91ff225bcb1587ddb4d062","author":{"email":"a6723cc3f76163bf7adb636a73ac3b0ceb3e6b9b@pobox.com","name":"Junio C Hamano"},"message":"mailinfo: fold decode_header_bq() into decode_header()\n\nIn olden days we might have wanted to behave differently in\ndecode_header() if the header line was encoded with RFC2047, but we\napparently do not do so, hence this helper function can go, together\nwith its return value.\n\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/3a8fcdaf844910578d91ff225bcb1587ddb4d062"},{"sha":"b6af8ed13a73a705b79e79ecd7320f3e90e98315","author":{"email":"a6723cc3f76163bf7adb636a73ac3b0ceb3e6b9b@pobox.com","name":"Junio C Hamano"},"message":"mailinfo: fix an off-by-one error in the boundary stack\n\nWe pre-increment the pointer that we will use to store something at,\nso the pointer is already beyond the end of the array if it points\nat content[MAX_BOUNDARIES].\n\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/b6af8ed13a73a705b79e79ecd7320f3e90e98315"},{"sha":"e38ee06e99635cca0997d6a04f0c22357670090d","author":{"email":"a6723cc3f76163bf7adb636a73ac3b0ceb3e6b9b@pobox.com","name":"Junio C Hamano"},"message":"mailinfo: explicitly close file handle to the patch output\n\nThis does not make a difference within the context of \"git mailinfo\"\nthat runs once and exits, as flushing and closing would happen upon\nprocess termination.  It however will matter when we eventually make\nit callable as an API function.\n\nBesides, cleaning after yourself once you are done is a good hygiene.\n\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/e38ee06e99635cca0997d6a04f0c22357670090d"},{"sha":"9eaa78b0b037964da85d6a15f0128639f2118a53","author":{"email":"a465943a57fa904f657395f0625b7c4a17423e73@triplefau.lt","name":"Remi Pommarel"},"message":"Makefile: link libcurl before zlib\n\nFor static linking especially library order while linking is important. For\nexample, libcurl wants symbols from zlib when building http-push, http-fetch\nand remote-curl. So for these programs libcurl has to be linked before zlib.\n\nSigned-off-by: Remi Pommarel <repk@triplefau.lt>\nReviewed-by: Jonathan Nieder <jrnieder@gmail.com>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/9eaa78b0b037964da85d6a15f0128639f2118a53"},{"sha":"f89158760d5f02ba59f644799abd921e6be22f13","author":{"email":"a465943a57fa904f657395f0625b7c4a17423e73@triplefau.lt","name":"Remi Pommarel"},"message":"Makefile: make curl-config path configurable\n\nThere are situations, e.g. during cross compilation, where curl-config\nprogram is not present in the PATH.\n\nMake the makefile use a configurable curl-config program passed through\nCURL_CONFIG variable which can be set through config.mak.\n\nAlso make this variable tunable through use of autoconf/configure. Configure\nwill set CURL_CONFIG variable in config.mak.autogen to whatever value has been\npassed to ac_cv_prog_CURL_CONFIG.\n\nSigned-off-by: Remi Pommarel <repk@triplefau.lt>\nReviewed-by: Jonathan Nieder <jrnieder@gmail.com>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/f89158760d5f02ba59f644799abd921e6be22f13"},{"sha":"7e91e8d73a757801c0604a03fd2f0fa8003e4ac0","author":{"email":"a465943a57fa904f657395f0625b7c4a17423e73@triplefau.lt","name":"Remi Pommarel"},"message":"configure.ac: detect ssl need with libcurl\n\nWhen libcurl has been statically compiled with openssl support they both\nneed to be linked in everytime libcurl is used.\n\nDuring configuration this can be detected by looking for Curl_ssl_init\nfunction symbol in libcurl, which will only be present if libcurl has been\ncompiled statically built with openssl.\n\nconfigure.ac checks for Curl_ssl_init function in libcurl and if such function\nexists; it sets NEEDS_SSL_WITH_CURL that is used by the Makefile to include\n-lssl alongside with -lcurl.\n\nSigned-off-by: Remi Pommarel <repk@triplefau.lt>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/7e91e8d73a757801c0604a03fd2f0fa8003e4ac0"},{"sha":"41284eb0f944fe2d73708bb4105a8e3ccd0297df","author":{"email":"a13b1135e6f2f8530e85bc2896cd5ed89a6ed863@twopensource.com","name":"David Turner"},"message":"name-hash: don't reuse cache_entry in dir_entry\n\nStop reusing cache_entry in dir_entry; doing so causes a\nuse-after-free bug.\n\nDuring merges, we free entries that we no longer need in the\ndestination index.  But those entries might have also been stored in\nthe dir_entry cache, and when a later call to add_to_index found them,\nthey would be used after being freed.\n\nTo prevent this, change dir_entry to store a copy of the name instead\nof a pointer to a cache_entry.  This entails some refactoring of code\nthat expects the cache_entry.\n\nKeith McGuigan <kmcguigan@twitter.com> diagnosed this bug and wrote\nthe initial patch, but this version does not use any of Keith's code.\n\nHelped-by: Keith McGuigan <kmcguigan@twitter.com>\nHelped-by: Junio C Hamano <gitster@pobox.com>\nSigned-off-by: David Turner <dturner@twopensource.com>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/41284eb0f944fe2d73708bb4105a8e3ccd0297df"},{"sha":"12d19e80b049dbedd51e9e6a70260383b9db4dd0","author":{"email":"a6723cc3f76163bf7adb636a73ac3b0ceb3e6b9b@pobox.com","name":"Junio C Hamano"},"message":"mailinfo: plug strbuf leak during continuation line handling\n\nWhether this loop is left via EOF/break or upon finding a\nnon-continuation line, the storage used for the contination line\nhandling is left behind.\n\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/12d19e80b049dbedd51e9e6a70260383b9db4dd0"},{"sha":"39afcd38196fa3594924a73896e5fa2bca21dd63","author":{"email":"a6723cc3f76163bf7adb636a73ac3b0ceb3e6b9b@pobox.com","name":"Junio C Hamano"},"message":"mailinfo: move handle_boundary() lower\n\nThis function wants to call find_boundary() and is called only from\none place without any recursing, so it becomes easier to read if it\nappears after the called function.\n\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/39afcd38196fa3594924a73896e5fa2bca21dd63"},{"sha":"9cc243f7a9b06fefb29cd8e4d91ecf97298c0cb5","author":{"email":"a6723cc3f76163bf7adb636a73ac3b0ceb3e6b9b@pobox.com","name":"Junio C Hamano"},"message":"mailinfo: move read_one_header_line() closer to its callers\n\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/9cc243f7a9b06fefb29cd8e4d91ecf97298c0cb5"},{"sha":"4f0f9d46c72f049c80c7cec0f321429ac2e49d11","author":{"email":"a6723cc3f76163bf7adb636a73ac3b0ceb3e6b9b@pobox.com","name":"Junio C Hamano"},"message":"mailinfo: move check_header() after the helpers it uses\n\nThis way, we can lose a forward decl for decode_header().\n\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/4f0f9d46c72f049c80c7cec0f321429ac2e49d11"},{"sha":"30f50c3426def6062b214d3f9cb0dd09776e4415","author":{"email":"a6723cc3f76163bf7adb636a73ac3b0ceb3e6b9b@pobox.com","name":"Junio C Hamano"},"message":"mailinfo: move cleanup_space() before its users\n\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/30f50c3426def6062b214d3f9cb0dd09776e4415"},{"sha":"c1b40bd7b616792de5f307ecdfd8ac45573bc4f9","author":{"email":"a6723cc3f76163bf7adb636a73ac3b0ceb3e6b9b@pobox.com","name":"Junio C Hamano"},"message":"mailinfo: move definition of MAX_HDR_PARSED closer to its use\n\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/c1b40bd7b616792de5f307ecdfd8ac45573bc4f9"},{"sha":"269e239c48ac8f70248beb4539535af0ed930682","author":{"email":"a6723cc3f76163bf7adb636a73ac3b0ceb3e6b9b@pobox.com","name":"Junio C Hamano"},"message":"mailinfo: get rid of function-local static states\n\nTwo helper functions use \"static int\" in their scope to keep track\nof the state while repeatedly getting called once for each input\nline.  Move these state variables to their ultimate caller and pass\ndown pointers to them along the callchain, as a small step in\npreparation for making this entire callchain more reentrant.\n\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/269e239c48ac8f70248beb4539535af0ed930682"},{"sha":"fde00d50f6b084680085b9924b198e7f3138fc9e","author":{"email":"a6723cc3f76163bf7adb636a73ac3b0ceb3e6b9b@pobox.com","name":"Junio C Hamano"},"message":"mailinfo: do not let handle_body() touch global \"line\" directly\n\nThis function has a single caller, and called with the global \"line\"\nholding the first line of the e-mail body after the caller finished\nprocessing the e-mail headers.  The function then goes into a loop\nto process each line of the input, starting from what was given by\nits caller, and fills the same global \"line\" variable from the input\nas it needs to process more lines.\n\nLet the caller explicitly pass a pointer to this global \"line\"\nvariable as an argument, and have the function itself use that\nstrbuf throughout, instead of referring to the global \"line\" itself.\n\nThere are helper functions that this function calls that still touch\nthe global directly; they will be updated as the series progresses.\n\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/fde00d50f6b084680085b9924b198e7f3138fc9e"},{"sha":"69e24defd629eb6641e653b73459f57ab750c58b","author":{"email":"a6723cc3f76163bf7adb636a73ac3b0ceb3e6b9b@pobox.com","name":"Junio C Hamano"},"message":"mailinfo: do not let handle_boundary() touch global \"line\" directly\n\nThis function has a single caller, and called with the global \"line\"\nholding the multi-part boundary line the caller saw while processing\nthe e-mail body.  The function then goes into a loop to process each\nline of the input, and fills the same global \"line\" variable from\nthe input as it needs to read more lines to process the multi-part\nheaders.\n\nLet the caller explicitly pass a pointer to this global \"line\"\nvariable as an argument, and have the function itself use that\nstrbuf throughout, instead of referring to the global \"line\" itself.\n\nThere still is a helper function that this function calls that still\ntouches the global directly; it will be updated as the series progresses.\n\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/69e24defd629eb6641e653b73459f57ab750c58b"},{"sha":"fbbcafd0607d6fccb2fde39c49619bcd7a7b910b","author":{"email":"a6723cc3f76163bf7adb636a73ac3b0ceb3e6b9b@pobox.com","name":"Junio C Hamano"},"message":"mailinfo: do not let find_boundary() touch global \"line\" directly\n\nWith the previous two commits, we established that the local\nvariable \"line\" in handle_body() and handle_boundary() functions\nalways refer to the global \"line\" that is used as the common and\nshared \"current line from the input\".  They are the only callers of\nthe last function that refers to the global line directly, i.e.\nfind_boundary().  Pass \"line\" as a parameter to this leaf function\nto complete the clean-up.  Now the only function that directly refers\nto the global \"line\" is the caller of handle_body() at the very\nbeginning of this whole callchain.\n\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/fbbcafd0607d6fccb2fde39c49619bcd7a7b910b"},{"sha":"6e21b5089f981e0e239bee722fc0d0edec703b8a","author":{"email":"a6723cc3f76163bf7adb636a73ac3b0ceb3e6b9b@pobox.com","name":"Junio C Hamano"},"message":"mailinfo: move global \"line\" into mailinfo() function\n\nWith the previous steps, it becomes clear that the mailinfo()\nfunction is the only one that wants the \"line\" to be directly\ntouchable.  Move it to the function scope of this function.\n\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/6e21b5089f981e0e239bee722fc0d0edec703b8a"},{"sha":"c69f2395ba6f4bc96542d6d52987989992331226","author":{"email":"a6723cc3f76163bf7adb636a73ac3b0ceb3e6b9b@pobox.com","name":"Junio C Hamano"},"message":"mailinfo: introduce \"struct mailinfo\" to hold globals\n\nIn this first step, move only 'email' and 'name' fields in there and\nremove the corresponding globals.  In subsequent patches, more\nglobals will be moved to this and the structure will be passed\naround as a new parameter to more functions.\n\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/c69f2395ba6f4bc96542d6d52987989992331226"}]}