summaryrefslogtreecommitdiff
path: root/patches/6.dmenu-password-5.0.diff
diff options
context:
space:
mode:
authorSaumit Dinesan <79687674+justsaumit@users.noreply.github.com>2022-01-27 22:13:50 +0530
committerGitHub <noreply@github.com>2022-01-27 22:13:50 +0530
commita4cd52a47d182c46e967f022c42d3a9aa89dc205 (patch)
treebc37a6a9af66e474f35e590135b3f924d2c05ef7 /patches/6.dmenu-password-5.0.diff
parent93d674df44c4d0057efdd96a14cd5546f3f97e54 (diff)
Delete patches directory
Diffstat (limited to 'patches/6.dmenu-password-5.0.diff')
-rw-r--r--patches/6.dmenu-password-5.0.diff103
1 files changed, 0 insertions, 103 deletions
diff --git a/patches/6.dmenu-password-5.0.diff b/patches/6.dmenu-password-5.0.diff
deleted file mode 100644
index 7a187b9..0000000
--- a/patches/6.dmenu-password-5.0.diff
+++ /dev/null
@@ -1,103 +0,0 @@
-From c4de1032bd4c247bc20b6ab92a10a8d778966679 Mon Sep 17 00:00:00 2001
-From: Mehrad Mahmoudian <m.mahmoudian@gmail.com>
-Date: Tue, 4 May 2021 12:05:09 +0300
-Subject: [PATCH] patched with password patch
-
----
- dmenu.1 | 5 ++++-
- dmenu.c | 21 +++++++++++++++++----
- 2 files changed, 21 insertions(+), 5 deletions(-)
-
-diff --git a/dmenu.1 b/dmenu.1
-index 323f93c..762f707 100644
---- a/dmenu.1
-+++ b/dmenu.1
-@@ -3,7 +3,7 @@
- dmenu \- dynamic menu
- .SH SYNOPSIS
- .B dmenu
--.RB [ \-bfiv ]
-+.RB [ \-bfivP ]
- .RB [ \-l
- .IR lines ]
- .RB [ \-m
-@@ -47,6 +47,9 @@ is faster, but will lock up X until stdin reaches end\-of\-file.
- .B \-i
- dmenu matches menu items case insensitively.
- .TP
-+.B \-P
-+dmenu will not directly display the keyboard input, but instead replace it with dots. All data from stdin will be ignored.
-+.TP
- .BI \-l " lines"
- dmenu lists items vertically, with the given number of lines.
- .TP
-diff --git a/dmenu.c b/dmenu.c
-index 65f25ce..ad8f63b 100644
---- a/dmenu.c
-+++ b/dmenu.c
-@@ -37,7 +37,7 @@ struct item {
- static char text[BUFSIZ] = "";
- static char *embed;
- static int bh, mw, mh;
--static int inputw = 0, promptw;
-+static int inputw = 0, promptw, passwd = 0;
- static int lrpad; /* sum of left and right padding */
- static size_t cursor;
- static struct item *items = NULL;
-@@ -132,6 +132,7 @@ drawmenu(void)
- unsigned int curpos;
- struct item *item;
- int x = 0, y = 0, w;
-+ char *censort;
-
- drw_setscheme(drw, scheme[SchemeNorm]);
- drw_rect(drw, 0, 0, mw, mh, 1, 1);
-@@ -143,7 +144,12 @@ drawmenu(void)
- /* draw input field */
- w = (lines > 0 || !matches) ? mw - x : inputw;
- drw_setscheme(drw, scheme[SchemeNorm]);
-- drw_text(drw, x, 0, w, bh, lrpad / 2, text, 0);
-+ if (passwd) {
-+ censort = ecalloc(1, sizeof(text));
-+ memset(censort, '.', strlen(text));
-+ drw_text(drw, x, 0, w, bh, lrpad / 2, censort, 0);
-+ free(censort);
-+ } else drw_text(drw, x, 0, w, bh, lrpad / 2, text, 0);
-
- curpos = TEXTW(text) - TEXTW(&text[cursor]);
- if ((curpos += lrpad / 2 - 1) < w) {
-@@ -524,6 +530,11 @@ readstdin(void)
- char buf[sizeof text], *p;
- size_t i, imax = 0, size = 0;
- unsigned int tmpmax = 0;
-+ if(passwd){
-+ inputw = lines = 0;
-+ return;
-+ }
-+
-
- /* read each line from stdin and add it to the item list */
- for (i = 0; fgets(buf, sizeof buf, stdin); i++) {
-@@ -689,7 +700,7 @@ setup(void)
- static void
- usage(void)
- {
-- fputs("usage: dmenu [-bfiv] [-l lines] [-p prompt] [-fn font] [-m monitor]\n"
-+ fputs("usage: dmenu [-bfivP] [-l lines] [-p prompt] [-fn font] [-m monitor]\n"
- " [-nb color] [-nf color] [-sb color] [-sf color] [-w windowid]\n", stderr);
- exit(1);
- }
-@@ -712,7 +723,9 @@ main(int argc, char *argv[])
- else if (!strcmp(argv[i], "-i")) { /* case-insensitive item matching */
- fstrncmp = strncasecmp;
- fstrstr = cistrstr;
-- } else if (i + 1 == argc)
-+ } else if (!strcmp(argv[i], "-P")) /* is the input a password */
-+ passwd = 1;
-+ else if (i + 1 == argc)
- usage();
- /* these options take one argument */
- else if (!strcmp(argv[i], "-l")) /* number of lines in vertical list */
---
-2.31.1
-