changeset 10829:dae370949a39

[gaim-migrate @ 12495] This is the Right Fix for a quick fix KingAnt posted to Tcl in HEAD the other day. This changes gaim::conversation find to take a mandatory account argument, to reflect changes in the availability of gaim_find_conversation_30chars_here functions. committer: Tailor Script <tailor@pidgin.im>
author Ethan Blanton <elb@pidgin.im>
date Sat, 16 Apr 2005 16:10:29 +0000
parents 9cf14a87eedc
children 692da861f43c
files plugins/tcl/tcl_cmds.c
diffstat 1 files changed, 9 insertions(+), 39 deletions(-) [+]
line wrap: on
line diff
--- a/plugins/tcl/tcl_cmds.c	Sat Apr 16 16:05:40 2005 +0000
+++ b/plugins/tcl/tcl_cmds.c	Sat Apr 16 16:10:29 2005 +0000
@@ -459,8 +459,6 @@
 	enum { CMD_CONV_FIND, CMD_CONV_HANDLE, CMD_CONV_LIST, CMD_CONV_NEW, CMD_CONV_WRITE } cmd;
 	const char *styles[] = { "send", "recv", "system", NULL };
 	enum { CMD_CONV_WRITE_SEND, CMD_CONV_WRITE_RECV, CMD_CONV_WRITE_SYSTEM } style;
-	const char *findopts[] = { "-account", NULL };
-	enum { CMD_CONV_FIND_ACCOUNT } findopt;
 	const char *newopts[] = { "-chat", "-im" };
 	enum { CMD_CONV_NEW_CHAT, CMD_CONV_NEW_IM } newopt;
 	GaimConversation *convo;
@@ -480,47 +478,19 @@
 
 	switch (cmd) {
 	case CMD_CONV_FIND:
-		if (objc < 3) {
-			Tcl_WrongNumArgs(interp, 2, objv, "?options? name");
+		if (objc != 4) {
+			Tcl_WrongNumArgs(interp, 2, objv, "account name");
 			return TCL_ERROR;
 		}
-		argsused = 2;
 		account = NULL;
-		while (argsused < objc) {
-			opt = Tcl_GetString(objv[argsused]);
-			if (*opt == '-') {
-				if ((error = Tcl_GetIndexFromObj(interp, objv[argsused], findopts,
-								 "option", 0, (int *)&findopt)) != TCL_OK)
-					return error;
-				argsused++;
-				switch (findopt) {
-				case CMD_CONV_FIND_ACCOUNT:
-					if (argsused == objc - 1) {
-						Tcl_SetStringObj(result, "-account requires an argument", -1);
-						return TCL_ERROR;
-					}
-					if ((error = Tcl_GetIntFromObj(interp, objv[argsused],
-								       (int *)&account)) != TCL_OK)
-						return error;
-					if (!tcl_validate_account(account, interp))
-						return TCL_ERROR;
-					argsused++;
-					break;
-				}
-			} else {
-				break;
-			}
-		}
-		if (objc - argsused != 1) {
-			Tcl_WrongNumArgs(interp, 2, objv, "?options? name");
+		if ((error = Tcl_GetIntFromObj(interp, objv[2],
+					       (int *)&account)) != TCL_OK)
 			return error;
-		}
-		if (account != NULL) {
-			convo = gaim_find_conversation_with_account(GAIM_CONV_ANY, Tcl_GetString(objv[argsused]), account);
-		} else {
-			/* TODO: What should we do here? */
-			convo = gaim_find_conversation_with_account(GAIM_CONV_ANY, Tcl_GetString(objv[argsused]), NULL);
-		}
+		if (!tcl_validate_account(account, interp))
+			return TCL_ERROR;
+		convo = gaim_find_conversation_with_account(GAIM_CONV_ANY,
+							    Tcl_GetString(objv[3]),
+							    account);
 		Tcl_SetIntObj(result, (int)convo);
 		break;
 	case CMD_CONV_HANDLE: