|
|
3.31, Аноним (31), 19:15, 26/01/2024 [^] [^^] [^^^] [ответить]
| +/– |
Вообще непонятно, почему многие когда-то туда ломанулись. Gitea же намного лучше.
| |
3.33, Аноним (-), 20:52, 26/01/2024 [^] [^^] [^^^] [ответить]
| +/– |
> Критикуешь предлагай. Какие альтернативы?
Gitea или как там ее. То что используют codeberg и notabug. В цать раз менее монструозное нечто, и дыр соответственно - тоже!
А gitlab - это монструозный лагучий спагетти-монстр. В котором - вот - по вулну каждый месяц, если не больше. Штуки типа tor - заманаются руткиты с серваков вынимать потом.
| |
|
|
1.2, Бывалый смузихлёб (?), 10:16, 26/01/2024 [ответить] [﹢﹢﹢] [ · · · ]
| +4 +/– |
> проблема решена преобразованием YAML в JSON
> и проверкой наличия конструкций, корректных в YAML,
> но недопустимых в JSON из-за использования
> определённых Unicode-символов
Гениально! Что ни день - то патчи продуктов всё лучше и лучше
| |
|
2.5, Аноним (5), 10:31, 26/01/2024 [^] [^^] [^^^] [ответить]
| +3 +/– |
это же классика (NSFW контент далее):
'''
$data = json_decode($data);
if (is_null($data) && JSON_ERROR_NONE !== json_last_error_msg()) {
// ошибка =)
}
'''
| |
|
|
4.14, Аноним (5), 12:53, 26/01/2024 [^] [^^] [^^^] [ответить]
| +1 +/– |
Рядом, это пыха)
А почему "И", потому что до сих пор в пыхе (да и в js) "null" - это валидный json равный NULL. И это не считается ошибкой, хотя json_decode при ошибке вернет именно NULL.
❯ php83 -r 'var_dump(json_validate("null"), json_decode("null", true), json_last_error_msg());'
Command line code:1:
bool(true)
Command line code:1:
NULL
Command line code:1:
string(8) "No error"
| |
|
5.23, Аноним (23), 15:50, 26/01/2024 [^] [^^] [^^^] [ответить]
| +1 +/– |
Стоит отметить, что json_decode поддерживает флаг JSON_THROW_ON_ERROR начиная где-то с 7.3, который помогает убрать немного костылирования вокруг этой функциональности
| |
5.41, penetrator (?), 04:29, 28/01/2024 [^] [^^] [^^^] [ответить]
| +/– |
> Рядом, это пыха)
> А почему "И", потому что до сих пор в пыхе (да и
> в js) "null" - это валидный json равный NULL. И это
> не считается ошибкой, хотя json_decode при ошибке вернет именно NULL.
ОК, допустим, мы такие а вдруг распарсит без ошибок и вернет нул из json_decode, в этом случае отработает правая часть: JSON_ERROR_NONE !== json_last_error_msg()
т.е. корректность парсинга определяется только этой правой частью, а значит нам нет никакого смысла делать ненужную проверку слева от И независимо от того, что у нас в data
ты можешь сказать, что если нул вернулся, то не должна программа продолжится, ну тогда не нужна правая часть, а только левая, потому что проверять надо на нул - вернулся нул - шлем нафиг, и все равно по какой причине, ошибка парсинга или нулевой жсон
или я какой-то пых финт упускаю?
| |
|
|
3.38, qwe (??), 02:22, 27/01/2024 [^] [^^] [^^^] [ответить]
| +/– |
То есть вторая часть условия никогда не сработает, потому что json_last_error_msg никогда не вернет JSON_ERROR_NONE. Там должна быть функция json_last_error.
| |
|
4.40, Аноним (5), 22:22, 27/01/2024 [^] [^^] [^^^] [ответить]
| +/– |
> То есть вторая часть условия никогда не сработает, потому что json_last_error_msg никогда
> не вернет JSON_ERROR_NONE. Там должна быть функция json_last_error.
Yep, лоханулся =(
Хорошо что это не стек) отсюда не скопируют)
| |
|
|
2.30, Аноньимъ (ok), 19:05, 26/01/2024 [^] [^^] [^^^] [ответить]
| +/– |
Это вообще жесть.
А проверить строку на левые юникод символы это типо слишком сложно уже?
| |
|
1.8, Аноним (8), 11:38, 26/01/2024 [ответить] [﹢﹢﹢] [ · · · ]
| +2 +/– |
>в патче проблема решена преобразованием YAML в JSON и проверкой наличия конструкций, корректных в YAML, но недопустимых в JSON
Надо YAML->JSON->XML, так ещё вероятнее обнаружение некорректных конструкций. Так надёжнее! ;)
| |
1.9, YetAnotherOnanym (ok), 12:06, 26/01/2024 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
То есть, ни подобрать с самого начала, ни перейти сейчас на нормальную либу для парсинга ямла, оказалось задачей непосильной.
| |
1.21, Пряник (?), 15:06, 26/01/2024 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
> насколько это позволяют права доступа, под которыми выполняется web-интерфейс GitLab
бесполезная уязвимость
| |
1.25, Аноним (25), 16:09, 26/01/2024 [ответить] [﹢﹢﹢] [ · · · ]
| +4 +/– |
> в патче проблема решена преобразованием YAML в JSON и проверкой наличия конструкций, корректных в YAML, но недопустимых в JSON из-за использования определённых Unicode-символов
Это какое-то зумерское "исправление". Я сейчас пытаюсь осознать, что зумеры чтобы проверить на наличие определённых символов перегоняют один смузи-формат в другой... Наверняка с гигабайтами задействованных фреймворков.
Это какая-то странная квази-айтишная эволюция пост-советских офисных тётенек, зачем-то перегонявших документ в .jpeg с помощью принтера и сканера.
Что дальше, для тупого сравнения строк будет запускаться нейросеть в облаке? Мозги, для чего они?
| |
|
2.27, Аноним (-), 17:02, 26/01/2024 [^] [^^] [^^^] [ответить]
| +/– |
> Что дальше, для тупого сравнения строк
К сожалению со сравнением строк тоже не все хорошо.
Вон недавно в GNU split не смогли строку на две части разделить.
И получили уязвимость...
| |
2.35, Аноним (-), 20:55, 26/01/2024 [^] [^^] [^^^] [ответить]
| +/– |
> Это какая-то странная квази-айтишная эволюция пост-советских офисных тётенек,
> зачем-то перегонявших документ в .jpeg с помощью принтера и сканера.
Это тебе еще повезло. А то могут и при помощи камеры на мобильнике. Ну подумаешь, не в фокусе немного.
| |
|
|