about summary refs log tree commit diff stats
Commit message (Collapse)AuthorAgeFilesLines
* save file as a *-0 instead of *.0 HEAD mainDaniel Santos2023-07-011-1/+1
| | | | Signed-off-by: Daniel Santos <dan.git@brilhante.top>
* same filename in url openDaniel Santos2023-07-011-0/+17
| | | | Signed-off-by: Daniel Santos <dan.git@brilhante.top>
* /executable async on|offDaniel Santos2023-07-018-10/+70
| | | | | | | | | | | | | | * rename call_external() to call_external_async(). * add call_external_fork(). This function makes all executable calls to be forked and synchronous. So that running profanity inside a TTY, we can set all executables to be TTY programs (fbi, mpv, w3m, emacs eww, etc.), making possible to open urls or see images inside the TTY. * add '/executable async' command. * make call_external() use either call_external_async() or call_external_fork(), according to the '/executable async' configuration. Signed-off-by: Daniel Santos <dacs.git@brilhante.top>
* Use ASCII char in MAM loading stringDaniel Santos2023-07-011-1/+1
| | | | | | | | * MAM loading string char to ASCII, for better display in all TTYs. * All source code files have been checked, and there is no other issue for TTYs chars display. Signed-off-by: Daniel Santos <dacs.git@brilhante.top>
* Profani-tty has rebornDaniel Santos2023-07-01177-854/+855
|
* Revert "Merge pull request #1821 from mdosch/use-proper-ellipsis-char"Daniel Santos2023-07-0110-28/+28
| | | | | This reverts commit 19921f61c14095cadc55b329dd7c8f02bdc79d31, reversing changes made to ac581c29bfa7c31fbfb6fe8019d257d3883b33bb.
* Merge pull request #1842 from H3rnand3zzz/feature/plugins-downloadMichael Vetter2023-06-0614-112/+327
|\ | | | | New Feature: Plugins Download
| * Add url support (downloading) to `/plugins install`John Hernandez2023-05-1613-35/+279
| | | | | | | | Additional changes include code refactoring.
| * `/url save` and `/url open` refactoringJohn Hernandez2023-05-112-80/+51
| | | | | | | | Additional changes: jid.c minor refactoring
* | Merge pull request #1856 from profanity-im/fix-1855Michael Vetter2023-06-051-0/+6
|\ \ | | | | | | Fix double-free of values.
| * | Fix double-free of values.Steffen Jaeckel2023-06-041-0/+6
|/ / | | | | | | | | | | | | | | | | | | The strings have to be dup'ed, otherwise we'll free them twice. Fixes #1855 Introduced by b6bb50ceb28250317351fd5115e3f187f0c56fba Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
* | Expand `/url` descriptionMichael Vetter2023-05-311-2/+2
| |
* | Merge pull request #1853 from profanity-im/fix-1852Michael Vetter2023-05-281-3/+8
|\ \ | | | | | | Fix 1852
| * | Fix use-after-freeSteffen Jaeckel2023-05-211-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | introduced in 8d3c1f79ac7cc2b0830f0afed48dc1fb9008ab0e This fixes #1852 Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
| * | Improve debug loggingSteffen Jaeckel2023-05-211-2/+4
| | | | | | | | | | | | | | | | | | | | | Tell the user that a MAM request will be issued delayed instead of showing a warning that MAM isn't supported by the server. Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
| * | Fix memleakSteffen Jaeckel2023-05-211-0/+1
|/ / | | | | | | | | | | introduced in 5d3c8ce7c164f74f606ff06d1adf849821591a51 Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
* | Merge pull request #1848 from profanity-im/minor-improvementsMichael Vetter2023-05-1210-132/+69
|\ \ | | | | | | Minor improvements
| * | Fix `-Werror=maybe-uninitialized`Steffen Jaeckel2023-05-122-109/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When compiling with `CFLAGS="-O2 -fexceptions -Wp,-D_FORTIFY_SOURCE=2"`, as done per default when creating an AUR package e.g. via `makepkg`, this error is produced. Refactor `stanza_create_mam_iq()` in order to fix said warning-turned-into- an-error. Edit by jubalh: I still think the error message is a false positive. But this commit improves the code a lot. Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
| * | Remove VLA & calm ValgrindSteffen Jaeckel2023-05-122-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `MB_CUR_MAX` looks like a macro, but it's a function call and therefore creates a VLA. We don't want that. Also this array being uninitialized created the following Valgrind error ``` ==503529== Conditional jump or move depends on uninitialised value(s) ==503529== at 0x619F15E: waddnstr (lib_addstr.c:67) ==503529== by 0x1929B7: _inp_write (inputwin.c:353) ==503529== by 0x1937D5: _inp_redisplay (inputwin.c:619) ==503529== by 0x61511B1: rl_forced_update_display (display.c:2693) ==503529== by 0x193F9D: _inp_rl_send_to_editor (inputwin.c:957) ==503529== by 0x614642F: _rl_dispatch_subseq (readline.c:916) ==503529== by 0x6146C85: _rl_dispatch_callback (readline.c:823) ==503529== by 0x616739F: rl_callback_read_char (callback.c:241) ==503529== by 0x1923DB: inp_readline (inputwin.c:188) ==503529== by 0x149860: prof_run (profanity.c:117) ==503529== by 0x2283E8: main (main.c:186) ==503529== Uninitialised value was created by a stack allocation ==503529== at 0x1928B1: _inp_write (inputwin.c:334) ``` Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
| * | Fix memleaks & more auto-freeSteffen Jaeckel2023-05-121-15/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `data_dir` would have been leaked if directory creation failed. `editor_argv` was leaked at some point, no idea why. ``` ==1244734== 118 (32 direct, 86 indirect) bytes in 1 blocks are definitely lost in loss record 6,299 of 7,824 ==1244734== at 0x4846CC3: realloc (vg_replace_malloc.c:1451) ==1244734== by 0x5E85AD0: g_realloc (in /usr/lib/libglib-2.0.so.0.7600.1) ==1244734== by 0x5E4A004: ??? (in /usr/lib/libglib-2.0.so.0.7600.1) ==1244734== by 0x5E4A7B1: g_ptr_array_add (in /usr/lib/libglib-2.0.so.0.7600.1) ==1244734== by 0x5EA4235: g_strsplit (in /usr/lib/libglib-2.0.so.0.7600.1) ==1244734== by 0x1F143C: get_message_from_editor (editor.c:92) ==1244734== by 0x193F6B: _inp_rl_send_to_editor (inputwin.c:950) ==1244734== by 0x614642F: _rl_dispatch_subseq (readline.c:916) ==1244734== by 0x6146C85: _rl_dispatch_callback (readline.c:823) ==1244734== by 0x616739F: rl_callback_read_char (callback.c:241) ==1244734== by 0x1923DB: inp_readline (inputwin.c:188) ==1244734== by 0x149860: prof_run (profanity.c:117) ==1244734== by 0x2283E8: main (main.c:186) ``` Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
| * | Improve const-correctness of APISteffen Jaeckel2023-05-124-4/+4
| | | | | | | | | | | | Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
| * | Fix potential double-freeSteffen Jaeckel2023-05-121-1/+1
| | | | | | | | | | | | | | | | | | introduced in 8d3c1f79ac7cc2b0830f0afed48dc1fb9008ab0e Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
| * | Consider global CFLAGS and use libstrophe CFLAGSSteffen Jaeckel2023-05-121-2/+2
|/ / | | | | | | | | | | global `CFLAGS` were ignore before Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
* | Merge pull request #1839 from H3rnand3zzz/cleanup/gchar-charMichael Vetter2023-05-1125-267/+137
|\ \ | | | | | | Cleanup: gchar as gchar instead of char
| * \ Merge branch 'master' into cleanup/gchar-charMichael Vetter2023-05-1113-90/+111
| |\ \ | |/ / |/| |
* | | Merge pull request #1847 from profanity-im/minor-improvementsMichael Vetter2023-05-1110-27/+46
|\ \ \ | | | | | | | | Minor improvements
| * | | fix memory leaksSteffen Jaeckel2023-05-102-21/+22
| | | | | | | | | | | | | | | | Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
| * | | fix `/reconnect now`Steffen Jaeckel2023-05-107-3/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes #1846 Issue introduced by a0aa26b6fa65ba625f4a6d3495a345c7120ff16d Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
| * | | more `auto_char`Steffen Jaeckel2023-05-101-2/+1
| | | | | | | | | | | | | | | | Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
| * | | fix "window `NULL` issue" (hopefully)Steffen Jaeckel2023-05-101-1/+1
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There were multiple reports where after a reconnect the window of the MUC that was last opened, was empty. `muc_join()` creates an instance of a MUC, `presence_join_room()` works with this instance. Therefore the instance has to exist before working on it. I'm not sure if this really fixes the issue, but at least it didn't happen anymore after I applied this modification. I can't remember how I stumbled over this, either while looking at debug logs or while looking at Valgrind output while a reconnect happened, but something went wrong. Then I came to the conclusion that this may fix the issue and for now it did ... maybe it comes back, then my RCA was wrong. Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
* | | Merge pull request #1845 from profanity-im/fix/avatarMichael Vetter2023-05-114-64/+65
|\ \ \ | |/ / |/| | Improvements for /executable and /avatar code
| * | Add helper function for individual cmd_executable_*() functionsMichael Vetter2023-05-101-46/+7
| | | | | | | | | | | | | | | | | | Each of the cmd_executable_editor(), cmd_executable_urlopen() etc calls this helper function since they were all doing the same just for different configurations.
| * | Add autocompletion for /executable parametersMichael Vetter2023-05-101-0/+32
| | | | | | | | | | | | | | | We autocompleted `/executable` to `avatar`, `vcard_photo`, `editor` etc. But didn't autocomplete the next parameter. Namely `set` and `default`.
| * | Make it possible to reset editor to defaultMichael Vetter2023-05-102-0/+5
| | | | | | | | | | | | | | | All the other commands (avatar, vcard_photo, urlsave, urlopen) have the ability to reset to default already.
| * | Add vcard_photo to /executable autocompletionMichael Vetter2023-05-101-0/+1
| | | | | | | | | | | | Was forgotten in f934c5b59.
| * | Align avatar behaviour with urlopenMichael Vetter2023-05-103-19/+24
| | | | | | | | | | | | | | | | | | `/executable avatar` now also uses cmdtemplate and parse %p. It seems to me that the `/avatar` command was actually completely broken on master.
| * | Remove parsing of /avatar cmdMichael Vetter2023-05-101-3/+0
| | | | | | | | | | | | | | | | | | This is done in `/executable avatar set` since d7848e38b. The command help also didn't mention this anymore. Seems like it was forgotten to remove the actual parsing of this.
| | * Cleanup: gchar as gchar instead of charJohn Hernandez2023-05-0426-269/+138
| |/ |/| | | | | | | | | | | | | Use gchar instead of char in most of the cases where gchar is intended. Reason: improve compatibility and stability. Issue #1819 Minor refactoring.
* | Merge pull request #1843 from IsaacM88/masterMichael Vetter2023-05-038-20/+92
|\| | | | | Add ability to disable avatar publishing
| * Add ability to disable avatar publishingIsaacM882023-05-028-20/+92
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add "/avatar disable" to comply with point "3.5 Publisher Disables Avatar Publishing" in XEP-0084. src/command/cmd_defs.c:2416 Add "disable" argument. Reword the "/avatar" command description so it flows better. src/command/cmd_ac.c:1101 Add "disable" to the "/avatar" autocomplete dictionary. src/command/cmd_funcs.c:9277 Split "/avatar" commands into two groups with an if statement; those with a parameter and those without. "cons_bad_cmd_usage()" is in both groups, which is messy. "disable" has similar logic to "set", but it includes a failure message. src/xmpp/avatar.c:152 "avatar_publishing_disable()" uses the same logic to publish metadata as in "avatar_set()". src/xmpp/avatar.c:238 Add a message to inform users when they do not receive an avatar after using "/avatar get" and "/avatar open". In case of a failure, the user will be subscribed to future avatar updates as long as they continue to use their current instance of profanity. Adding "caps_remove_feature()" after "cons_show()" will unsubscribe the user from avatar updates and prevent the user from downloading an avatar unexpectedly hours later without issuing an "/avatar" command. src/xmpp/stanza.c:2698 The new "disable" function follows the same logic as "stanza_create_avatar_metadata_publish_iq()".
* Merge pull request #1838 from H3rnand3zzz/fix/omemo-trust-notificationMichael Vetter2023-04-191-3/+3
|\ | | | | Improve OMEMO messages
| * Improve OMEMO messagesJohn Hernandez2023-04-191-3/+3
| |
* | Merge pull request #1840 from H3rnand3zzz/fix/plugins-unloadMichael Vetter2023-04-191-31/+22
|\ \ | | | | | | Fix `/plugins update`
| * | Fix `/plugins update`John Hernandez2023-04-191-31/+22
| |/ | | | | | | | | | | | | | | | | | | | | Before it tried to unload the plugin first and check the output. But if broken plugin was loaded, then it couldn't unload it, so before it require uninstall and install after it, making update useless for plugin development purposes. Unload is part of the uninstall so no unload is needed inside of the cmd function. Refactoring of cmd_plugins_update.
* | Merge pull request #1837 from profanity-im/fix/memleakclientcheckMichael Vetter2023-04-192-0/+4
|\ \ | |/ |/| Fix two recently introduced memleaks
| * Fix memleak in _inp_rl_linehandlerMichael Vetter2023-04-181-0/+1
| | | | | | | | Introduced in 59b99fece.
| * Fix memleak in stanza_create_caps_query_elementMichael Vetter2023-04-181-0/+3
|/ | | | Got introduced with 5d3c8ce7c.
* Merge pull request #1835 from H3rnand3zzz/fix/message-loggingMichael Vetter2023-04-182-19/+12
|\ | | | | Fix crash, add consistency to logging
| * Add logging consistencyJohn Hernandez2023-04-181-1/+2
| | | | | | | | | | | | | | Since MUC private messages are not logged by design, part where this logging happening is removed to add consistency. Add explanation in comment.
| * Fix `/log level` crashJohn Hernandez2023-04-181-18/+10
|/ | | | | | Fix crash caused by `/log level` command. Minor refactoring of command function.