summaryrefslogtreecommitdiff
path: root/phpdbg_utils.c
diff options
context:
space:
mode:
authorkrakjoe <joe.watkins@live.co.uk>2014-02-17 07:40:35 +0000
committerkrakjoe <joe.watkins@live.co.uk>2014-02-17 07:40:35 +0000
commit1fce0887a32b18f11ff08ab81bc11d4b77992f89 (patch)
tree70a0804285e671f17478895faeb89ca5bf2a472d /phpdbg_utils.c
parent3cabee71ab57020336aa92378e406199dc551397 (diff)
parentf89f66d7620c316e751d5a3335a012070e7de457 (diff)
downloadphp-git-1fce0887a32b18f11ff08ab81bc11d4b77992f89.tar.gz
Merge branch 'master' of https://github.com/krakjoe/phpdbg into lexer
Diffstat (limited to 'phpdbg_utils.c')
-rw-r--r--phpdbg_utils.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/phpdbg_utils.c b/phpdbg_utils.c
index 1effcfccaf..d64d9ad686 100644
--- a/phpdbg_utils.c
+++ b/phpdbg_utils.c
@@ -30,6 +30,8 @@
#ifdef _WIN32
# include "win32/time.h"
+#elif defined(HAVE_SYS_IOCTL_H)
+# include "sys/ioctl.h"
#endif
ZEND_EXTERN_MODULE_GLOBALS(phpdbg);
@@ -385,3 +387,22 @@ PHPDBG_API const char *phpdbg_get_prompt(TSRMLS_D) /* {{{ */
return PHPDBG_G(prompt)[1];
} /* }}} */
+
+PHPDBG_API int phpdbg_get_terminal_width(TSRMLS_D) /* {{{ */
+{
+ int columns;
+#ifdef _WIN32
+ CONSOLE_SCREEN_BUFFER_INFO csbi;
+
+ GetConsoleScreenBufferInfo(GetStdHandle(STD_OUTPUT_HANDLE), &csbi);
+ columns = csbi.srWindow.Right - csbi.srWindow.Left + 1;
+#elif defined(HAVE_SYS_IOCTL_H)
+ struct winsize w;
+
+ columns = ioctl(fileno(stdout), TIOCGWINSZ, &w) == 0 ? w.ws_col : 100;
+#else
+ columns = 100;
+#endif
+ return columns;
+} /* }}} */
+