الأولوية/الخطورة:
متوسط
المنصة
نظام التشغيل
المتصفح
Windows 11
Google Chrome 112.0.5615.138
Ubuntu 22.04
Google Chrome 112.0.5615.49
macOS Ventura
Google Chrome 112.0.5615.137
(جميعها سطح مكتب)
الوصف:
في ظل الظروف التالية، لا يتم عرض علامات url الخاصة بـ BBCode بشكل صحيح في المشاركات:
ينتهي النص المغلف بالعلامات بعنوان URL
يحتوي عنوان URL هذا على مكون بعد مكون المضيف (أي، مسار ، استعلام ، و/أو جزء )
خطوات التكرار:
قم بإنشاء مشاركة تحتوي على الترميز التالي:
[url]http://example.com/[/url]
لا يتم عرض الترميز كما هو متوقع:
السلوك المتوقع:
يتم عرض الترميز على النحو التالي:
سياق إضافي
أنا قادر على تكرار الخطأ على try.discourse.org في “وضع آمن ”.
بعض الأمثلة الإضافية للتعامل غير الصحيح مع النص الذي ينتهي بعنوان URL مع مسار:
الترميز:
[url]http://example.com/foo[/url]
[url]http://example.com/foo/[/url]
[url=http://example.com/]http://example.com/[/url]
[url=http://example.com/]foo http://example.com/[/url]
معروض:
تم الإبلاغ عنه في الأصل على Old url markup not migrated to new forum - Website and Forum - Arduino Forum
لدينا الكثير من المشاركات التي كُتبت في وقت كانت فيه هذه العلامات تُعرض بشكل صحيح (قبل الترحيل من إطار عمل SMF إلى Discourse).
3 إعجابات
sam
(Sam Saffron)
21 أبريل 2023، 6:38ص
2
لقد تم تأكيد هذا كخلل أساسي نأمل في إصلاحه خلال الأسابيع القليلة القادمة.
على وجه التحديد:
[url]http://example.com[/url] سيعمل، ولكن: [url]http://example.com/example[/url] لا يعمل إلا إذا أضفت مسافة لاحقة [url]http://example.com/example [/url].
لقد بدأت في تتبع الأمور ويبدو أن شيئًا ما يعطل المحلل الخاص بنا هنا، ربما قاعدة هروب. سنقوم بحل هذه المشكلة، شكرًا لك على طرحها.
5 إعجابات
david
(David Taylor)
21 أبريل 2023، 6:54م
7
لست على دراية تامة بهذا الرمز، لكنني ألقيت نظرة سريعة. أعتقد أن الأمر يتعلق بنظام الربط التلقائي. بحلول الوقت الذي يبحث فيه المحلل عن وسم إغلاق الرابط [/url]، يكون قد تم دمجه بالفعل في رابط تلقائي.
على سبيل المثال، لاحظ أن الرابط التلقائي هنا هو إلى http://example.com/foo%5B/url%5D
http://example.com/foo
لهذا السبب يساعد إضافة المسافة - فهي تمنع الرابط التلقائي من تضمين [/url]
6 إعجابات
sam
(Sam Saffron)
24 أبريل 2023، 4:45ص
9
لقد قمت بإصلاح هذا وفقًا لـ:
main ← fix_paths_bbcode
opened 04:31AM - 24 Apr 23 UTC
Due to the order we were parsing markdown, bbcode [url] elements were not
handle… d properly.
`[url]https://example.com/path[/url]` was not currectly parsing cause
linkify was detecting the url as: `https://example.com/path[/url]` which is
legit.
To resolve this I swapped url to use a replace rule, and instead re-parsed
the internal payload and injected the tokens in.
This fix is complex cause we support stuff like
`[url][b]test.com[/b][/url]`
So we need to parse the content inside url `[b]test.com[/b]`
لا تتردد في المراجعة / الدمج… إنه إصلاح معقد للغاية يا @per1234 لأننا ندعم أشياء مجنونة مثل
[url][b]www.site.com[/b][/url]
5 إعجابات
sam
(Sam Saffron)
25 أبريل 2023، 8:29م
13
تم إصلاح كل شيء الآن
[url]http://example.com/foo[/url]
[url]http://example.com/foo/[/url]
[url=http://example.com/]http://example.com/[/url]
[url=http://example.com/]foo http://example.com/[/url]
http://example.com/foo
http://example.com/foo/
http://example.com/
foo http://example.com/
@per1234 يجب أن تكون قد تم النشر بالفعل مع الإصلاح، أخبرنا إذا كان كل شيء يبدو جيدًا!
شكرًا للإبلاغ!
إعجاب واحد (1)
شكرا جزيلا على الحل السريع والمُستحق sam !
3 إعجابات
sam
(Sam Saffron)
تم إغلاقه في
30 أبريل 2023، 10:00م
15
تم إغلاق هذا الموضوع تلقائيًا بعد 5 أيام. لم يعد يُسمح بالردود الجديدة.