mirror of
https://codeberg.org/grunfink/snac2.git
synced 2024-11-22 21:35:04 +00:00
Merge remote-tracking branch 'upstream/master'
This commit is contained in:
commit
2410c73d9a
3 changed files with 19 additions and 8 deletions
|
@ -4,10 +4,12 @@
|
||||||
|
|
||||||
Added support for Peertube videos.
|
Added support for Peertube videos.
|
||||||
|
|
||||||
Mastodon API: Added support for editing posts, fixed an error related to the edit date of a post.
|
Mastodon API: Added support for editing posts, fixed an error related to the edit date of a post, fixed some crashes.
|
||||||
|
|
||||||
Added a handshake emoji next to a user name if it's a mutual relation (follower and followed), because friendship is bliss.
|
Added a handshake emoji next to a user name if it's a mutual relation (follower and followed), because friendship is bliss.
|
||||||
|
|
||||||
|
Tweaked some retry timeout values for better behaviour in larger instances (thanks to me@mysmallinstance.homelinux.org for their help).
|
||||||
|
|
||||||
## 2.45
|
## 2.45
|
||||||
|
|
||||||
Fixed a collision in webfinger caching. This may affect federation with some software, so I recommend an upgrade.
|
Fixed a collision in webfinger caching. This may affect federation with some software, so I recommend an upgrade.
|
||||||
|
|
|
@ -2220,7 +2220,7 @@ void process_queue_item(xs_dict *q_item)
|
||||||
|
|
||||||
/* deliver (if previous error status was a timeout, try now longer) */
|
/* deliver (if previous error status was a timeout, try now longer) */
|
||||||
status = send_to_inbox_raw(keyid, seckey, inbox, msg,
|
status = send_to_inbox_raw(keyid, seckey, inbox, msg,
|
||||||
&payload, &p_size, p_status == 599 ? 20 : 3);
|
&payload, &p_size, p_status == 599 ? 8 : 6);
|
||||||
|
|
||||||
if (payload) {
|
if (payload) {
|
||||||
if (p_size > 64) {
|
if (p_size > 64) {
|
||||||
|
|
15
mastoapi.c
15
mastoapi.c
|
@ -240,8 +240,10 @@ int oauth_post_handler(const xs_dict *req, const char *q_path,
|
||||||
char *i_ctype = xs_dict_get(req, "content-type");
|
char *i_ctype = xs_dict_get(req, "content-type");
|
||||||
xs *args = NULL;
|
xs *args = NULL;
|
||||||
|
|
||||||
if (i_ctype && xs_startswith(i_ctype, "application/json"))
|
if (i_ctype && xs_startswith(i_ctype, "application/json")) {
|
||||||
|
if (!xs_is_null(payload))
|
||||||
args = xs_json_loads(payload);
|
args = xs_json_loads(payload);
|
||||||
|
}
|
||||||
else
|
else
|
||||||
if (i_ctype && xs_startswith(i_ctype, "application/x-www-form-urlencoded") && payload) {
|
if (i_ctype && xs_startswith(i_ctype, "application/x-www-form-urlencoded") && payload) {
|
||||||
xs *upl = xs_url_dec(payload);
|
xs *upl = xs_url_dec(payload);
|
||||||
|
@ -250,6 +252,9 @@ int oauth_post_handler(const xs_dict *req, const char *q_path,
|
||||||
else
|
else
|
||||||
args = xs_dup(xs_dict_get(req, "p_vars"));
|
args = xs_dup(xs_dict_get(req, "p_vars"));
|
||||||
|
|
||||||
|
if (args == NULL)
|
||||||
|
return 400;
|
||||||
|
|
||||||
xs *cmd = xs_replace_n(q_path, "/oauth", "", 1);
|
xs *cmd = xs_replace_n(q_path, "/oauth", "", 1);
|
||||||
|
|
||||||
srv_debug(1, xs_fmt("oauth_post_handler %s", q_path));
|
srv_debug(1, xs_fmt("oauth_post_handler %s", q_path));
|
||||||
|
@ -1981,8 +1986,10 @@ int mastoapi_post_handler(const xs_dict *req, const char *q_path,
|
||||||
xs *args = NULL;
|
xs *args = NULL;
|
||||||
char *i_ctype = xs_dict_get(req, "content-type");
|
char *i_ctype = xs_dict_get(req, "content-type");
|
||||||
|
|
||||||
if (i_ctype && xs_startswith(i_ctype, "application/json"))
|
if (i_ctype && xs_startswith(i_ctype, "application/json")) {
|
||||||
|
if (!xs_is_null(payload))
|
||||||
args = xs_json_loads(payload);
|
args = xs_json_loads(payload);
|
||||||
|
}
|
||||||
else
|
else
|
||||||
args = xs_dup(xs_dict_get(req, "p_vars"));
|
args = xs_dup(xs_dict_get(req, "p_vars"));
|
||||||
|
|
||||||
|
@ -2504,8 +2511,10 @@ int mastoapi_put_handler(const xs_dict *req, const char *q_path,
|
||||||
xs *args = NULL;
|
xs *args = NULL;
|
||||||
char *i_ctype = xs_dict_get(req, "content-type");
|
char *i_ctype = xs_dict_get(req, "content-type");
|
||||||
|
|
||||||
if (i_ctype && xs_startswith(i_ctype, "application/json"))
|
if (i_ctype && xs_startswith(i_ctype, "application/json")) {
|
||||||
|
if (!xs_is_null(payload))
|
||||||
args = xs_json_loads(payload);
|
args = xs_json_loads(payload);
|
||||||
|
}
|
||||||
else
|
else
|
||||||
args = xs_dup(xs_dict_get(req, "p_vars"));
|
args = xs_dup(xs_dict_get(req, "p_vars"));
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue