Changeset 928 for trunk


Ignore:
Timestamp:
May 28, 2019, 11:57:29 AM (6 years ago)
Author:
djay
Message:

Fix typo

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/zoo-project/zoo-kernel/service_internal_python.c

    r927 r928  
    758758map* _mapFromPyDict(PyDictObject* t) {
    759759       
    760         PyObject* list = PyDict_Keys((PyObject*) t); // new ref
    761         int nb = PyList_Size(list);
     760  PyObject* list = PyDict_Keys((PyObject*) t); // new ref
     761  int nb = PyList_Size(list);
    762762       
    763         if (nb < 1) {
    764                 Py_DECREF(list);
    765                 return NULL;
    766         }       
     763  if (nb < 1) {
     764    Py_DECREF(list);
     765    return NULL;
     766  }     
    767767       
    768         map* ptr = (map*) malloc(MAP_SIZE);
    769         map* res = ptr;
     768  map* ptr = (map*) malloc(MAP_SIZE);
     769  map* res = ptr;
    770770       
    771         PyObject* key;
    772         PyObject* value;
    773         const char *buffer = NULL;
    774         Py_ssize_t size;
    775         for(int i = 0; i < nb; i++) {
     771  PyObject* key;
     772  PyObject* value;
     773#if PY_MAJOR_VERSION >= 3 
     774  const
     775#endif
     776    char *buffer = NULL;
     777  Py_ssize_t size;
     778  for(int i = 0; i < nb; i++) {
    776779               
    777                 key = PyList_GetItem(list, i); // borrowed ref
    778                 value = PyDict_GetItem((PyObject*) t, key); // borrowed ref             
     780    key = PyList_GetItem(list, i); // borrowed ref
     781    value = PyDict_GetItem((PyObject*) t, key); // borrowed ref         
    779782                               
    780                 ptr->name = zStrdup(PyString_AsString(key));           
    781                 map* msize = NULL;
     783    ptr->name = zStrdup(PyString_AsString(key));               
     784    map* msize = NULL;
    782785               
    783         #if PY_MAJOR_VERSION >= 3
    784                 if (PyBytes_Check(value)) {
    785                 // value is byte array
    786                         size = PyBytes_Size(value);                             
    787                         buffer = PyBytes_AsString(value); // pointer to internal buffer
    788                         char sz[32];
    789                         sprintf(sz, "%d", (int) size); 
    790                         msize = createMap("size", sz);                 
    791                 }
    792                 else if (PyUnicode_Check(value) && PyUnicode_READY(value) == 0) {
    793                 // value is string object               
    794                         buffer = PyUnicode_AsUTF8AndSize(value, &size);
    795                         size++;
    796                 }
    797                 else {
    798                         printf("Type not recognized\n");
    799                         // error handling
    800                         // ...
    801                 }
    802         #else   
    803                 PyString_AsStringAndSize(value, &buffer, &size);
    804                 size++;
    805                 // to do: handle byte arrays
    806         #endif
     786#if PY_MAJOR_VERSION >= 3
     787    if (PyBytes_Check(value)) {
     788      // value is byte array
     789      size = PyBytes_Size(value);                               
     790      buffer = PyBytes_AsString(value); // pointer to internal buffer
     791      char sz[32];
     792      sprintf(sz, "%d", (int) size);   
     793      msize = createMap("size", sz);                   
     794    }
     795    else if (PyUnicode_Check(value) && PyUnicode_READY(value) == 0) {
     796      // value is string object         
     797      buffer = PyUnicode_AsUTF8AndSize(value, &size);
     798      size++;
     799    }
     800    else {
     801      printf("Type not recognized\n");
     802      // error handling
     803      // ...
     804    }
     805#else   
     806    PyString_AsStringAndSize(value, &buffer, &size);
     807    size++;
     808    // to do: handle byte arrays
     809#endif
    807810               
    808                 ptr->value = (char*) malloc(size); // check for NULL pointer
    809                 memmove(ptr->value, buffer, size);
     811    ptr->value = (char*) malloc(size); // check for NULL pointer
     812    memmove(ptr->value, buffer, size);
    810813                       
    811                 if (msize != NULL) {
    812                         ptr->next = msize;
    813                         ptr = ptr->next;
    814                 }                                               
     814    if (msize != NULL) {
     815      ptr->next = msize;
     816      ptr = ptr->next;
     817    }                                           
    815818               
    816                 ptr->next = i < nb - 1 ? (map*) malloc(MAP_SIZE) : NULL;
    817                 ptr = ptr->next;
    818         }       
    819         Py_DECREF(list);
     819    ptr->next = i < nb - 1 ? (map*) malloc(MAP_SIZE) : NULL;
     820    ptr = ptr->next;
     821  }     
     822  Py_DECREF(list);
    820823                       
    821         return res;
     824  return res;
    822825} // mapFromPyDict
    823826
Note: See TracChangeset for help on using the changeset viewer.

Search

Context Navigation

ZOO Sponsors

http://www.zoo-project.org/trac/chrome/site/img/geolabs-logo.pnghttp://www.zoo-project.org/trac/chrome/site/img/neogeo-logo.png http://www.zoo-project.org/trac/chrome/site/img/apptech-logo.png http://www.zoo-project.org/trac/chrome/site/img/3liz-logo.png http://www.zoo-project.org/trac/chrome/site/img/gateway-logo.png

Become a sponsor !

Knowledge partners

http://www.zoo-project.org/trac/chrome/site/img/ocu-logo.png http://www.zoo-project.org/trac/chrome/site/img/gucas-logo.png http://www.zoo-project.org/trac/chrome/site/img/polimi-logo.png http://www.zoo-project.org/trac/chrome/site/img/fem-logo.png http://www.zoo-project.org/trac/chrome/site/img/supsi-logo.png http://www.zoo-project.org/trac/chrome/site/img/cumtb-logo.png

Become a knowledge partner

Related links

http://zoo-project.org/img/ogclogo.png http://zoo-project.org/img/osgeologo.png