view libpurple/purple-send @ 24080:005649461c77

In our child DNS lookup processes, don't bother to use select to watch the pipe with our parent. These processes don't do anything else, and they only need to watch one fd, so we can just use a blocking read() call. I don't think this will negatively affect anything, and it seems to fix some kind of funky rare race condition where the libpurple client will block while trying to read() a response from the child. If you think we should continue using select here, or you notice some problems with this, please let me know (and maybe even revert this)
author Mark Doliner <mark@kingant.net>
date Wed, 10 Sep 2008 21:48:33 +0000
parents 942bf314fc8a
children cea56d000b16
line wrap: on
line source

#!/bin/sh

METHOD_NAME=$1

if test -z "$METHOD_NAME" 
then
    cat <<EOF 
This program calls purple API functions using DBus and prints the return value.
If you are not interested in the return value, use purple-send-async.

Usage:

   $0 method-name type1:parameter1 type2:parameter2 ...

This shell script just invokes dbus-send, see man dbus-send for how 
to specify the parameters.  

Examples:

   $0 PurpleAccountsFindConnected string: string:prpl-jabber
   $0 PurpleAccountsGetAll
   $0 PurpleCoreQuit

Use dbus-viewer to get the list of supported functions and their parameters.
EOF
    exit 1
fi

shift
dbus-send --dest=im.pidgin.purple.PurpleService --print-reply --type=method_call /im/pidgin/purple/PurpleObject im.pidgin.purple.PurpleInterface.$METHOD_NAME "$@"

echo