--- rekall-2.4.5/script/python/tkc_pyvaluelist.cpp.BAD 2007-01-17 20:42:05.000000000 -0600 +++ rekall-2.4.5/script/python/tkc_pyvaluelist.cpp 2007-01-17 20:42:49.000000000 -0600 @@ -184,7 +184,7 @@ PyObject *floc ; PyObject *map = frame->f_code->co_varnames ; - for (int idx = 0 ; idx < frame->f_nlocals ; idx += 1) + for (int idx = 0 ; idx < PySequence_Length(frame->f_locals) ; idx += 1) if ((floc = frame->f_localsplus[idx]) != 0) fast.insert ( PyString_AsString(PyTuple_GET_ITEM(map, idx)), --- rekall-2.4.5/script/python/kb_basic.cpp.BAD 2007-01-18 16:58:59.000000000 -0600 +++ rekall-2.4.5/script/python/kb_basic.cpp 2007-01-18 17:00:12.000000000 -0600 @@ -400,7 +400,7 @@ QStringList pairs ; PyObject *key ; PyObject *value ; - int pos = 0 ; + Py_ssize_t pos = 0 ; //xxx use pickle or marshal to create the data representation instead //xxx of a simple string representation? --- rekall-2.4.5/script/python/kb_pycontainer.cpp.BAD 2007-01-18 17:50:28.000000000 -0600 +++ rekall-2.4.5/script/python/kb_pycontainer.cpp 2007-01-18 17:50:54.000000000 -0600 @@ -61,7 +61,7 @@ char *buffer ; int len ; - PyString_AsStringAndSize (pyImage, &buffer, &len) ; + PyString_AsStringAndSize (pyImage, &buffer, (Py_ssize_t *)&len) ; QByteArray ba ; ba.duplicate (buffer, len) ; --- rekall-2.4.5/script/python/tkc_pydebugbase.cpp.BAD 2007-01-18 18:37:03.000000000 -0600 +++ rekall-2.4.5/script/python/tkc_pydebugbase.cpp 2007-01-18 18:37:25.000000000 -0600 @@ -1084,7 +1084,7 @@ PyObject *pvalue ; int dictPos = 0 ; - while (PyDict_Next (pyDict, &dictPos, &pkey, &pvalue)) + while (PyDict_Next (pyDict, (Py_ssize_t *)&dictPos, &pkey, &pvalue)) { DPRINTF (( "TKCPyDebugBase::loadDictionary: insert [%s]\n", @@ -1147,7 +1147,7 @@ /* Scan the dictionary, looking for the object. In certain */ /* cases, we will recurse down ... */ - while (PyDict_Next (pyDict, &dictPos, &pyKey, &pyValue)) + while (PyDict_Next (pyDict, (Py_ssize_t *)&dictPos, &pyKey, &pyValue)) { if (pyValue == pyObject) return TKCPyDebugBase::getPythonString (pyKey) ; --- rekall-2.4.5/script/python/kb_pysupport.cpp.BAD 2007-01-18 18:34:22.000000000 -0600 +++ rekall-2.4.5/script/python/kb_pysupport.cpp 2007-01-18 18:34:56.000000000 -0600 @@ -42,7 +42,7 @@ kbDict.setAutoDelete (true) ; if (pyDict != 0) - while (PyDict_Next (pyDict, &pos, &key, &value)) + while (PyDict_Next (pyDict, (Py_ssize_t *)&pos, &key, &value)) { bool error ; QString qKey = kb_pyStringToQString (key, error) ;