Mercurial > hg
changeset 22403:41e9d58ec56f
parsers: avoid signed/unsigned comparison mismatch
Based on warning from Microsoft Visual C++ 2008.
author | Henrik Stuart <hg@hstuart.dk> |
---|---|
date | Mon, 08 Sep 2014 20:57:44 +0200 |
parents | fa53d66b45a8 |
children | 12bc7f06fc41 |
files | mercurial/parsers.c |
diffstat | 1 files changed, 8 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/parsers.c Mon Sep 08 20:22:10 2014 +0200 +++ b/mercurial/parsers.c Mon Sep 08 20:57:44 2014 +0200 @@ -275,15 +275,20 @@ PyObject *fname = NULL, *cname = NULL, *entry = NULL; char state, *cur, *str, *cpos; int mode, size, mtime; - unsigned int flen; - int len, pos = 40; + unsigned int flen, len, pos = 40; + int readlen; if (!PyArg_ParseTuple(args, "O!O!s#:parse_dirstate", &PyDict_Type, &dmap, &PyDict_Type, &cmap, - &str, &len)) + &str, &readlen)) goto quit; + if (readlen < 0) + goto quit; + + len = readlen; + /* read parents */ if (len < 40) goto quit;