/[weechat]/weechat/src/plugins/python/wee-python.c
ViewVC logotype

Diff of /weechat/src/plugins/python/wee-python.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.3 by kolter, Thu Jun 16 16:41:41 2005 UTC revision 1.4 by kolter, Tue Jul 12 14:46:44 2005 UTC
# Line 362  wee_python_get_info (PyObject *self, PyO Line 362  wee_python_get_info (PyObject *self, PyO
362          {                  {        
363              return Py_BuildValue ("i", SERVER(gui_current_window->buffer)->is_away);              return Py_BuildValue ("i", SERVER(gui_current_window->buffer)->is_away);
364          }          }
365            else if ( (strcasecmp (arg, "100") == 0) || (strcasecmp (arg, "dccs") == 0) )
366            {
367              t_irc_dcc *p = dcc_list;
368              int nbdccs = 0;
369              
370              for(; p; p = p->next_dcc)
371                nbdccs++;
372              
373              if (nbdccs == 0)
374                return Py_None;
375              
376              PyObject *tuple = PyTuple_New(nbdccs);
377    
378              if (!tuple)
379                return Py_None;
380              
381              PyObject *tuplevalue;
382              
383              int pos = 0;
384              for(; p; p = p->next_dcc)
385                {
386                  tuplevalue = Py_BuildValue("{s:k,s:k,s:s,s:s,s:s,s:i,s:k,s:k,s:i,s:i}",
387                                             "address32", p->addr,
388                                             "cps", p->bytes_per_sec,
389                                             "remote_file", p->filename,
390                                             "local_file", p->local_filename,
391                                             "nick", p->nick,
392                                             "port", p->port,
393                                             "pos", p->pos,
394                                             "size", p->size,
395                                             "status", p->status,
396                                             "type", p->type);
397                  if (tuplevalue)
398                    {
399                      if (PyTuple_SetItem(tuple, pos, tuplevalue) != 0)
400                        {
401                          PyMem_Free(tuplevalue);
402                          PyMem_Free(tuple);
403                          return Py_None;
404                        }
405                    }
406                  else
407                    return Py_None;
408                  pos++;
409                }
410              
411              return tuple;
412            }
413                    
414          if (info)          if (info)
415              return Py_BuildValue ("s", info);              return Py_BuildValue ("s", info);

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.4

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26