diff options
author | Felipe Pena <felipensp@gmail.com> | 2013-11-24 12:56:59 -0200 |
---|---|---|
committer | Felipe Pena <felipensp@gmail.com> | 2013-11-24 12:56:59 -0200 |
commit | 900bc9104ccbaa3ddea700afcdae643d68c90654 (patch) | |
tree | da74877b1cdbd5a2a914f5f491041f02bec61522 | |
parent | 795e12b85e436badf24fae5377d359337f35d459 (diff) | |
download | php-git-900bc9104ccbaa3ddea700afcdae643d68c90654.tar.gz |
- Oppss, forgot to add new files
-rw-r--r-- | phpdbg_set.c | 57 | ||||
-rw-r--r-- | phpdbg_set.h | 38 |
2 files changed, 95 insertions, 0 deletions
diff --git a/phpdbg_set.c b/phpdbg_set.c new file mode 100644 index 0000000000..41bc251502 --- /dev/null +++ b/phpdbg_set.c @@ -0,0 +1,57 @@ +/* + +----------------------------------------------------------------------+ + | PHP Version 5 | + +----------------------------------------------------------------------+ + | Copyright (c) 1997-2013 The PHP Group | + +----------------------------------------------------------------------+ + | This source file is subject to version 3.01 of the PHP license, | + | that is bundled with this package in the file LICENSE, and is | + | available through the world-wide-web at the following url: | + | http://www.php.net/license/3_01.txt | + | If you did not receive a copy of the PHP license and are unable to | + | obtain it through the world-wide-web, please send a note to | + | license@php.net so we can mail you a copy immediately. | + +----------------------------------------------------------------------+ + | Authors: Felipe Pena <felipe@php.net> | + | Authors: Joe Watkins <joe.watkins@live.co.uk> | + +----------------------------------------------------------------------+ +*/ + +#include "phpdbg.h" +#include "phpdbg_set.h" +#include "phpdbg_utils.h" + +ZEND_EXTERN_MODULE_GLOBALS(phpdbg); + +void phpdbg_set_prompt(const char* prompt TSRMLS_DC) /* {{{ */ +{ + if (PHPDBG_G(prompt)) { + efree(PHPDBG_G(prompt)); + } + + PHPDBG_G(prompt) = NULL; + spprintf(&PHPDBG_G(prompt), 0, "%s ", prompt); +} /* }}} */ + +const char *phpdbg_get_prompt(TSRMLS_D) /* {{{ */ +{ + return PHPDBG_G(prompt); +} /* }}} */ + +PHPDBG_SET(prompt) /* {{{ */ +{ + switch (param->type) { + case EMPTY_PARAM: + phpdbg_writeln(phpdbg_get_prompt(TSRMLS_C)); + break; + + case STR_PARAM: + phpdbg_set_prompt(param->str TSRMLS_CC); + break; + + phpdbg_default_switch_case(); + } + + return SUCCESS; +} /* }}} */ + diff --git a/phpdbg_set.h b/phpdbg_set.h new file mode 100644 index 0000000000..e523364519 --- /dev/null +++ b/phpdbg_set.h @@ -0,0 +1,38 @@ +/* + +----------------------------------------------------------------------+ + | PHP Version 5 | + +----------------------------------------------------------------------+ + | Copyright (c) 1997-2013 The PHP Group | + +----------------------------------------------------------------------+ + | This source file is subject to version 3.01 of the PHP license, | + | that is bundled with this package in the file LICENSE, and is | + | available through the world-wide-web at the following url: | + | http://www.php.net/license/3_01.txt | + | If you did not receive a copy of the PHP license and are unable to | + | obtain it through the world-wide-web, please send a note to | + | license@php.net so we can mail you a copy immediately. | + +----------------------------------------------------------------------+ + | Authors: Felipe Pena <felipe@php.net> | + | Authors: Joe Watkins <joe.watkins@live.co.uk> | + +----------------------------------------------------------------------+ +*/ + +#ifndef PHPDBG_SET_H +#define PHPDBG_SET_H + +#include "phpdbg_cmd.h" + +#define PHPDBG_SET(name) PHPDBG_COMMAND(set_##name) + +void phpdbg_set_prompt(const char* TSRMLS_DC); +const char* phpdbg_get_prompt(TSRMLS_D); + +PHPDBG_SET(prompt); + +static const phpdbg_command_t phpdbg_set_commands[] = { + PHPDBG_COMMAND_D_EX(prompt, "set prompt", 'p', set_prompt, NULL, 0), + PHPDBG_END_COMMAND +}; + + +#endif /* PHPDBG_SET_H */ |