Skip to content
Snippets Groups Projects
Commit 09175b84 authored by syuilo's avatar syuilo
Browse files

Fix #6016

parent 177e1963
No related branches found
No related tags found
No related merge requests found
......@@ -6,6 +6,7 @@ import { Notes } from '../../../../models';
import { generateMuteQuery } from '../../common/generate-mute-query';
import { generateVisibilityQuery } from '../../common/generate-visibility-query';
import { Brackets } from 'typeorm';
import { safeForSql } from '../../../../misc/safe-for-sql';
export const meta = {
desc: {
......@@ -99,7 +100,7 @@ export default define(meta, async (ps, me) => {
if (me) generateMuteQuery(query, me);
if (ps.tag) {
if (/[\0\x08\x09\x1a\n\r"'\\\%]/g.test(ps.tag)) return;
if (!safeForSql(ps.tag)) return;
query.andWhere(`'{"${ps.tag.toLowerCase()}"}' <@ note.tags`);
} else {
let i = 0;
......@@ -107,7 +108,8 @@ export default define(meta, async (ps, me) => {
for (const tags of ps.query!) {
qb.orWhere(new Brackets(qb => {
for (const tag of tags) {
qb.andWhere(`:tag${i} = ANY(note.tags)`, { [`tag${i}`]: tag.toLowerCase() });
if (!safeForSql(tag)) return;
qb.andWhere(`'{"${tag.toLowerCase()}"}' <@ note.tags`);
i++;
}
}));
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment