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

Re: What's cooking in git.git (Jun 2010, #02; Wed, 16)

From
Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Date
Jun 18, 2010, 06:30 UTC
Message-ID
<vpq8w6cc0om.fsf@bauges.imag.fr>
In-Reply-To
<7vmxut1b8v.fsf@alter.siamese.dyndns.org>
Junio C Hamano <gitster@pobox.com> writes:
Show 8 quoted lines
> Clément Poulain <clement.poulain@ensimag.imag.fr> writes:
>
>> A fix was proposed here:
>> http://mid.gmane.org/1276610328-28532-1-git-send-email-axel.bonnet@ensimag.imag.fr
>
> This one changes textconv_object() to take a pointer to ulong*; a caller
> is changed to cast a long* down to that pointer (in
> fill_origin_blob);

Isn't sign-casting safe? If not, then the existing call to read_sha1_file should be fixed too:

-file->ptr = read_sha1_file(o->blob_sha1, &type,
-   (unsigned long *)(&(file->size)));
[...]
+file->ptr = read_sha1_file(o->blob_sha1, &type,
+   (unsigned long *)(&(file->size)));
(it's been there for a while)
Show 6 quoted lines
>     The only portable way in C to convert between types is by assignment. So
>     you have to do:
>
>       unsigned long foo;
>       textconv_object(read_from, null_sha1, &buf.buf, &foo);
>       buf.len = foo;
This is what the patch does a little later:
+unsigned long buf_len;
[...]
+if (DIFF_OPT_TST(opt, ALLOW_TEXTCONV) &&
+    textconv_object(read_from, null_sha1, &buf.buf, &buf_len))
+buf.len = buf_len;
-- 
Matthieu Moy
http://www-verimag.imag.fr/~moy/
Previous: Junio C HamanoNext: Zhang Le
Message 8 of 10 in “What's cooking in git.git (Jun 2010, #02; Wed, 16)”
  1. Junio C HamanoJun 17, 2010
  2. Ævar Arnfjörð BjarmasonJun 17, 2010
  3. Junio C HamanoJun 17, 2010
  4. Philippe Bruhat (BooK)Jun 17, 2010
  5. Ævar Arnfjörð BjarmasonJun 17, 2010
  6. Clément PoulainJun 17, 2010
  7. Junio C HamanoJun 17, 2010
  8. Matthieu MoyJun 18, 2010
  9. Zhang LeJun 21, 2010
  10. send-email: ask about and declare 8bit mailsThomas Rast, Jun 17, 2010

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.