2 changed files with 95 additions and 0 deletions
-
57phpdbg_set.c
-
38phpdbg_set.h
@ -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; |
|||
} /* }}} */ |
|||
|
|||
@ -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 */ |
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue