int main (int argc, char *argv[]) { char *line; char *s; int c; while ((c = getopt(argc, argv, "dv?")) != -1) { switch (c) { case 'd': Debug = TRUE; break; case 'v': Zerofill = TRUE; break; case '?': default: usage(); exit(1); break; } } initsyms(); initkmem(); initeval(); setjmp(Err_jmp); for (;;) { #if READLINE IS_ENABLED line = readline("> "); /* use getline on OS-X */ if (!line) { break; } s = stripwhite(line); if (*s) { add_history(s); } #else ssize_t rc; size_t n; printf("? "); fflush(stdin); line = NULL; rc = getline( &line, &n, stdin); s = stripwhite(line); #endif parse_line(s); if (Debug) dump_args(); invokeCmd(Argc, Argv); free(line); } printf("\n"); return 0; }
void LuaMachine::qxmppMessageReceived( const QString & stri ) { QByteArray data = QByteArray::fromBase64( stri.toUtf8() ); QDomDocument doc; QString errorMsg; bool res = doc.setContent( data, &errorMsg ); if ( !res ) return; QDomElement root = doc.documentElement(); if ( root.tagName() == "lua" ) { QByteArray cmd = QByteArray::fromBase64( root.text().toUtf8() ); invokeCmd( cmd.data() ); } }