-
Notifications
You must be signed in to change notification settings - Fork 13
Open
Labels
bugSomething isn't workingSomething isn't working
Description
确认事项
-
我已确认网页端论坛的相应页面(如果有)不存在相应的错误行为,这个问题只存在于客户端。
-
我已在最新稳定版上验证,该问题依然存在。
-
我已在issue中搜索,确认没有重复或类似issue。
-
我已确认这个问题不属于已知问题。
-
我确认这个问题不属于安全漏洞(例如账号cookie超时、泄露)。安全漏洞问题不要在此上报,请论坛私信联系ruik0
复现步骤
打开可视化开关后使用隐藏内容功能,标签会多创建一个(在设置查看们看的时候)
预期的结果
设置门槛后依旧只有两个标签
实际的结果
有三个标签
应用信息
Info
- Version: 1.15.0+55.d060020a (2015) (2026-02-18)
- Flutter: 3.41.1 stable (582a0e7c55)
- Dart: 3.11.0 (stable)
环境信息
aosp10
附加信息
现象、信息填写到此处
截图或视频
SVID_20260223_073853_1_2026-02-23_074223.mp4
当次启动日志
[debug] | 7:35:34 977ms | ------------------- start app -------------------
[debug] | 7:35:34 983ms | connect to database
[debug] | 7:35:34 985ms | init database file at /data/user/0/kzs.th000.tsdm_clienu/files/db/mainV2.db
[debug] | 7:35:35 12ms | load cookie from database with login user uid: ****734
[debug] | 7:35:35 12ms | build no-cookie with cookie: null
[debug] | 7:35:35 30ms | InitCubit: deleting outdated image, outdateTime=2026-02-16 07:35:35.030475
[debug] | 7:35:35 57ms | InitCubit: deleted outdated image cache count 1
[info] | 7:35:35 57ms | SettingsDao: failed to get value by name "checkInFeeling": value not exists
[debug] | 7:35:35 58ms | AutoCheckinRepository: run auto checkin for uid ****734, ****419, ****506, ****353
[info] | 7:35:35 58ms | CookieProvider: load cookie from database with given uid: ****734
[debug] | 7:35:35 58ms | CookieProvider: cookie switch to user UserLoginInfo{ username=******, uid=****734,
[info] | 7:35:35 58ms | CookieProvider: load cookie from database with given uid: ****419
[debug] | 7:35:35 58ms | CookieProvider: cookie switch to user UserLoginInfo{ username=********用, uid=****419,
[info] | 7:35:35 58ms | CookieProvider: load cookie from database with given uid: ****506
[debug] | 7:35:35 58ms | CookieProvider: cookie switch to user UserLoginInfo{ username=********, uid=****506,
[info] | 7:35:35 58ms | CookieProvider: load cookie from database with given uid: ****353
[debug] | 7:35:35 58ms | CookieProvider: cookie switch to user UserLoginInfo{ username=*****, uid=****353,
[debug] | 7:35:35 58ms | build no-cookie with cookie: CookieProvider{ userInfo=UserLoginInfo{ username=******, uid=****734, , cookie=*** }
[debug] | 7:35:35 59ms | build no-cookie with cookie: CookieProvider{ userInfo=UserLoginInfo{ username=********用, uid=****419, , cookie=*** }
[debug] | 7:35:35 59ms | build no-cookie with cookie: CookieProvider{ userInfo=UserLoginInfo{ username=********, uid=****506, , cookie=*** }
[debug] | 7:35:35 59ms | build no-cookie with cookie: CookieProvider{ userInfo=UserLoginInfo{ username=*****, uid=****353, , cookie=*** }
[debug] | 7:35:35 279ms | RootLocationCubit: enter page /homepage
[debug] | 7:35:35 279ms | ForumHomeRepository: fetch home page
[debug] | 7:35:35 279ms | build cookie with user info: null
[debug] | 7:35:35 280ms | ProfileRepository: fetch profile page v2
[debug] | 7:35:35 280ms | build cookie with user info: null
[debug] | 7:35:36 40ms | build cookie with user info: null
[info] | 7:35:36 44ms | _GzipEncodingChecker: removing gzip encoding in request
[debug] | 7:35:37 316ms | ForumHomeRepository: use fetched home page
[debug] | 7:35:37 317ms | CookieProvider: save authed cookie to storage
[debug] | 7:35:37 324ms | AuthenticationRepository: save logged user info: UserLoginInfo{ username=******, uid=****734,
[debug] | 7:35:37 344ms | CookieProvider: update user info: UserLoginInfo{ username=******, uid=****734,
[debug] | 7:35:37 344ms | CookieProvider: complete user info updated, sync cookie
[debug] | 7:35:37 349ms | AuthenticationRepository: login with document: user UserLoginInfo{ username=******, uid=****734,
[debug] | 7:35:37 352ms | NotificationBloc: updating all notifications...
[info] | 7:35:37 353ms | AutoNotificationCubit: start auto fetch with duration 0:01:00.000000
[debug] | 7:35:37 574ms | NotificationBloc: fetch notification since 2026-02-22 20:37:36
[debug] | 7:35:37 574ms | build cookie with user info: null
[info] | 7:35:37 687ms | check in success: 恭喜你签到成功!获得随机奖励 天使币 8 .
[debug] | 7:35:38 228ms | NotificationBloc: saving notification: notice=12 personalMessage=0 broadcastMessage=0 latestTime=2026-02-23 04:32:47
[debug] | 7:35:38 383ms | NotificationBloc: load local notification: notice=500 personalMessage=58 broadcastMessage=7
[debug] | 7:35:38 384ms | NotificationInfoRepository: update auto sync info: NotificationAutoSyncInfoNotice(msg: 三玖奈 回复了您的帖子 今年春节打算怎么过 查看, notice: 12, personalMessage: 0, broadcastMessage: 0, timestamp: 1771803338384)
[debug] | 7:35:38 387ms | NotificationBloc: update last fetch notification time to 2026-02-23 04:32:47
[error] | 7:35:39 12ms | check in result in null: null
[error] | 7:35:39 81ms | check in result in null: null
[error] | 7:35:39 318ms | check in result in null: null
[debug] | 7:35:39 318ms | AutoCheckinRepository: run auto checkin for uid ****356, ****358, ****360, ****362
[info] | 7:35:39 318ms | CookieProvider: load cookie from database with given uid: ****356
[debug] | 7:35:39 318ms | CookieProvider: cookie switch to user UserLoginInfo{ username=*******, uid=****356,
[info] | 7:35:39 318ms | CookieProvider: load cookie from database with given uid: ****358
[debug] | 7:35:39 318ms | CookieProvider: cookie switch to user UserLoginInfo{ username=******, uid=****358,
[info] | 7:35:39 318ms | CookieProvider: load cookie from database with given uid: ****360
[debug] | 7:35:39 318ms | CookieProvider: cookie switch to user UserLoginInfo{ username=******, uid=****360,
[info] | 7:35:39 318ms | CookieProvider: load cookie from database with given uid: ****362
[debug] | 7:35:39 318ms | CookieProvider: cookie switch to user UserLoginInfo{ username=*****, uid=****362,
[debug] | 7:35:39 319ms | build no-cookie with cookie: CookieProvider{ userInfo=UserLoginInfo{ username=*******, uid=****356, , cookie=*** }
[debug] | 7:35:39 319ms | build no-cookie with cookie: CookieProvider{ userInfo=UserLoginInfo{ username=******, uid=****358, , cookie=*** }
[debug] | 7:35:39 319ms | build no-cookie with cookie: CookieProvider{ userInfo=UserLoginInfo{ username=******, uid=****360, , cookie=*** }
[debug] | 7:35:39 319ms | build no-cookie with cookie: CookieProvider{ userInfo=UserLoginInfo{ username=*****, uid=****362, , cookie=*** }
[debug] | 7:35:39 891ms | _HomePageState: push to notice page already in it
[debug] | 7:35:40 1ms | RootLocationCubit: enter page /notice
[info] | 7:35:40 335ms | check in success: 恭喜你签到成功!获得随机奖励 天使币 6 .
[error] | 7:35:41 775ms | check in result in null: null
[error] | 7:35:41 779ms | check in result in null: null
[error] | 7:35:41 783ms | check in result in null: null
[debug] | 7:35:41 783ms | AutoCheckinRepository: run auto checkin for uid ****363, ****364, ****365
[info] | 7:35:41 784ms | CookieProvider: load cookie from database with given uid: ****363
[debug] | 7:35:41 784ms | CookieProvider: cookie switch to user UserLoginInfo{ username=*******, uid=****363,
[info] | 7:35:41 784ms | CookieProvider: load cookie from database with given uid: ****364
[debug] | 7:35:41 784ms | CookieProvider: cookie switch to user UserLoginInfo{ username=******, uid=****364,
[info] | 7:35:41 785ms | CookieProvider: load cookie from database with given uid: ****365
[debug] | 7:35:41 785ms | CookieProvider: cookie switch to user UserLoginInfo{ username=******, uid=****365,
[debug] | 7:35:41 786ms | build no-cookie with cookie: CookieProvider{ userInfo=UserLoginInfo{ username=*******, uid=****363, , cookie=*** }
[debug] | 7:35:41 787ms | build no-cookie with cookie: CookieProvider{ userInfo=UserLoginInfo{ username=******, uid=****364, , cookie=*** }
[debug] | 7:35:41 787ms | build no-cookie with cookie: CookieProvider{ userInfo=UserLoginInfo{ username=******, uid=****365, , cookie=*** }
[debug] | 7:35:42 581ms | NotificationBloc: mark notice: RecordMarkNotice(uid: 1889734, nid: 9950273, alreadyRead: true)
[debug] | 7:35:42 583ms | NotificationBloc: update last fetch notification time to 2026-02-23 04:32:47
[info] | 7:35:43 38ms | check in success: 恭喜你签到成功!获得随机奖励 天使币 9 .
[debug] | 7:35:43 630ms | NotificationBloc: mark notice: RecordMarkNotice(uid: 1889734, nid: 9950272, alreadyRead: true)
[debug] | 7:35:43 631ms | NotificationBloc: update last fetch notification time to 2026-02-23 04:32:47
[debug] | 7:35:44 291ms | NotificationBloc: mark notice: RecordMarkNotice(uid: 1889734, nid: 9950271, alreadyRead: true)
[debug] | 7:35:44 292ms | NotificationBloc: update last fetch notification time to 2026-02-23 04:32:47
[error] | 7:35:44 381ms | check in result in null: null
[error] | 7:35:44 389ms | check in result in null: null
[debug] | 7:35:44 983ms | NotificationBloc: mark notice: RecordMarkNotice(uid: 1889734, nid: 9950270, alreadyRead: true)
[debug] | 7:35:44 983ms | NotificationBloc: update last fetch notification time to 2026-02-23 04:32:47
[debug] | 7:35:45 581ms | NotificationBloc: mark notice: RecordMarkNotice(uid: 1889734, nid: 9950269, alreadyRead: true)
[debug] | 7:35:45 582ms | NotificationBloc: update last fetch notification time to 2026-02-23 04:32:47
[debug] | 7:35:48 475ms | NotificationBloc: mark notice: RecordMarkNotice(uid: 1889734, nid: 9950268, alreadyRead: true)
[debug] | 7:35:48 476ms | NotificationBloc: update last fetch notification time to 2026-02-23 04:32:47
[debug] | 7:35:49 531ms | RootLocationCubit: enter page /autoCheckinDetail
[debug] | 7:35:51 672ms | dispatch url: https://www.tsdm39.com/forum.php?mod=redirect&goto=findpost&ptid=1258560&pid=77657318
[debug] | 7:35:51 705ms | RootLocationCubit: enter page /thread/v1
[debug] | 7:35:51 706ms | build cookie with user info: null
[info] | 7:35:51 708ms | _GzipEncodingChecker: removing gzip encoding in request
[debug] | 7:35:52 502ms | _ThreadPageState: save thread visit history tid=1258560
[debug] | 7:35:52 590ms | _PostListState: scroll to pid: 77657318
[debug] | 7:35:52 590ms | _PostListState: scroll to position: 14
[debug] | 7:35:52 591ms | ThreadVisitHistoryBloc: fetch all succeeded, data count is 87
[error] | 7:35:52 961ms | _ErrorHandler: https://www.tsdm39.com/uc_server/data/avatar/002/22/75/48_avatar_middle.jpg?mobile=no DioExceptionType.badResponse: error: null, status code: 404
[exception] | 7:35:52 961ms | ImageCacheProvider: handle raw error:
HttpHandshakeFailedException(message: This exception was thrown because the response has a status code of 404 and RequestOptions.validateStatus was configured to throw for this status code.
The status code of 404 has the following meaning: "Client error - the request contains bad syntax or cannot be fulfilled"
Read more about status codes at https://developer.mozilla.org/en-US/docs/Web/HTTP/Status
In order to resolve this exception you typically have either to verify and fix your request code or you have to fix the server code.
, statusCode: 404, headers: date: Sun, 22 Feb 2026 23:35:52 GMT
content-length: 1163
server: Microsoft-IIS/7.5
content-type: text/html
, stackTrace: #0 new AppException (package:tsdm_client/exceptions/exceptions.dart:78)
#1 new _MixinApplication395&AppException&HttpHandshakeFailedExceptionMappable (package:tsdm_client/exceptions/exceptions.dart)
#2 new HttpHandshakeFailedException (package:tsdm_client/exceptions/exceptions.dart:109)
#3 mapException (package:tsdm_client/shared/providers/net_client_provider/net_client_provider.dart:25)
#4 new TaskEither.tryCatch.<anonymous closure> (package:fpdart/src/task_either.dart:286)
<asynchronous suspension>
#5 ImageCacheProvider.getOrMakeCache (package:tsdm_client/shared/providers/image_cache_provider/image_cache_provider.dart:209)
<asynchronous suspension>
#6 CachedImageProvider._loadAsync (package:tsdm_client/widgets/cached_image/cached_image_provider.dart:108)
<asynchronous suspension>
#7 MultiFrameImageStreamCompleter._handleCodecReady (package:flutter/src/painting/image_stream.dart:1021)
<asynchronous suspension>
)
StackTrace: #0 ImageCacheProvider.getOrMakeCache (package:tsdm_client/shared/providers/image_cache_provider/image_cache_provider.dart:213)
<asynchronous suspension>
#1 CachedImageProvider._loadAsync (package:tsdm_client/widgets/cached_image/cached_image_provider.dart:108)
<asynchronous suspension>
#2 MultiFrameImageStreamCompleter._handleCodecReady (package:flutter/src/painting/image_stream.dart:1021)
<asynchronous suspension>
[debug] | 7:35:58 970ms | RootLocationCubit: enter page <editor>
[debug] | 7:35:58 987ms | ReplyBarController: update reply action
[debug] | 7:36:06 291ms | build cookie with user info: null
[info] | 7:36:06 785ms | _GzipEncodingChecker: removing gzip encoding in request
[debug] | 7:36:07 390ms | RootLocationCubit: leave page <editor>
[debug] | 7:36:09 484ms | RootLocationCubit: enter page <editor>
[debug] | 7:36:09 494ms | ReplyBarController: update reply action
[debug] | 7:36:17 175ms | build cookie with user info: null
[info] | 7:36:17 909ms | _GzipEncodingChecker: removing gzip encoding in request
[debug] | 7:36:18 637ms | RootLocationCubit: leave page <editor>
[debug] | 7:36:21 211ms | NotificationBloc: mark notice: RecordMarkNotice(uid: 1889734, nid: 9949911, alreadyRead: true)
[debug] | 7:36:21 213ms | NotificationBloc: update last fetch notification time to 2026-02-23 04:32:47
[debug] | 7:36:24 724ms | NotificationBloc: mark notice: RecordMarkNotice(uid: 1889734, nid: 9920293, alreadyRead: true)
[debug] | 7:36:24 727ms | NotificationBloc: update last fetch notification time to 2026-02-23 04:32:47
[debug] | 7:36:25 487ms | dispatch url: https://www.tsdm39.com/forum.php?mod=redirect&goto=findpost&ptid=1256567&pid=77657625
[debug] | 7:36:25 531ms | RootLocationCubit: enter page /thread/v1
[debug] | 7:36:25 532ms | build cookie with user info: null
[info] | 7:36:25 546ms | _GzipEncodingChecker: removing gzip encoding in request
[debug] | 7:36:26 614ms | _ThreadPageState: save thread visit history tid=1256567
[debug] | 7:36:26 686ms | _PostListState: scroll to pid: 77657625
[debug] | 7:36:26 687ms | _PostListState: scroll to position: 4
[debug] | 7:36:28 615ms | RootLocationCubit: enter page <editor>
[debug] | 7:36:28 624ms | ReplyBarController: update reply action
[debug] | 7:36:35 324ms | build cookie with user info: null
[info] | 7:36:35 989ms | _GzipEncodingChecker: removing gzip encoding in request
[debug] | 7:36:36 735ms | RootLocationCubit: leave page <editor>
[debug] | 7:36:37 355ms | AutoNotificationCubit: running auto fetch...
[debug] | 7:36:37 358ms | AutoNotificationCubit: auto fetch since 1771792368
[debug] | 7:36:37 358ms | build cookie with user info: null
[debug] | 7:36:37 895ms | AutoNotificationCubit: auto fetch finished with data
[debug] | 7:36:37 895ms | AutoNotificationCubit: update last fetch notification time to started time 2026-02-23 07:36:37.356056
[debug] | 7:36:37 898ms | NotificationBloc: saving notification: notice=0 personalMessage=0 broadcastMessage=0 latestTime=null
[debug] | 7:36:38 56ms | NotificationBloc: load local notification: notice=500 personalMessage=58 broadcastMessage=7
[debug] | 7:36:38 846ms | RootLocationCubit: enter page <editor>
[debug] | 7:36:38 850ms | ReplyBarController: update reply action
[debug] | 7:36:46 861ms | build cookie with user info: null
[info] | 7:36:47 323ms | _GzipEncodingChecker: removing gzip encoding in request
[debug] | 7:36:48 338ms | RootLocationCubit: leave page <editor>
[error] | 7:36:52 804ms |
Null check operator used on a null value
StackTrace: #0 State.context (package:flutter/src/widgets/framework.dart:959)
#1 _NoticeCardV2State._onUrlLaunched (package:tsdm_client/widgets/card/notice_card_v2.dart:52)
#2 _NoticeCardV2State.build.<anonymous closure> (package:tsdm_client/widgets/card/notice_card_v2.dart:168)
#3 _Muncher.munchNode.<anonymous closure> (package:tsdm_client/utils/html/html_muncher.dart:310)
<asynchronous suspension>
[debug] | 7:36:55 459ms | NotificationBloc: mark notice: RecordMarkNotice(uid: 1889734, nid: 9950076, alreadyRead: true)
[debug] | 7:36:56 93ms | NotificationBloc: mark notice: RecordMarkNotice(uid: 1889734, nid: 9950176, alreadyRead: true)
[debug] | 7:36:56 587ms | dispatch url: https://www.tsdm39.com/forum.php?mod=redirect&goto=findpost&ptid=1260566&pid=77658588
[debug] | 7:36:56 617ms | RootLocationCubit: enter page /thread/v1
[debug] | 7:36:56 617ms | build cookie with user info: null
[info] | 7:36:56 621ms | _GzipEncodingChecker: removing gzip encoding in request
[debug] | 7:36:57 337ms | _ThreadPageState: save thread visit history tid=1260566
[debug] | 7:36:57 402ms | _PostListState: scroll to pid: 77658588
[debug] | 7:36:57 402ms | _PostListState: scroll to position: 4
[exception] | 7:36:57 429ms | ImageCacheProvider: handle raw error:
HttpHandshakeFailedException(message: <unknown error>, statusCode: null, headers: null, stackTrace: #0 new AppException (package:tsdm_client/exceptions/exceptions.dart:78)
#1 new _MixinApplication395&AppException&HttpHandshakeFailedExceptionMappable (package:tsdm_client/exceptions/exceptions.dart)
#2 new HttpHandshakeFailedException (package:tsdm_client/exceptions/exceptions.dart:109)
#3 mapException (package:tsdm_client/shared/providers/net_client_provider/net_client_provider.dart:25)
#4 new TaskEither.tryCatch.<anonymous closure> (package:fpdart/src/task_either.dart:286)
<asynchronous suspension>
#5 ImageCacheProvider.getOrMakeCache (package:tsdm_client/shared/providers/image_cache_provider/image_cache_provider.dart:209)
<asynchronous suspension>
#6 CachedImageProvider._loadAsync (package:tsdm_client/widgets/cached_image/cached_image_provider.dart:108)
<asynchronous suspension>
#7 MultiFrameImageStreamCompleter._handleCodecReady (package:flutter/src/painting/image_stream.dart:1021)
<asynchronous suspension>
)
StackTrace: #0 ImageCacheProvider.getOrMakeCache (package:tsdm_client/shared/providers/image_cache_provider/image_cache_provider.dart:213)
<asynchronous suspension>
#1 CachedImageProvider._loadAsync (package:tsdm_client/widgets/cached_image/cached_image_provider.dart:108)
<asynchronous suspension>
#2 MultiFrameImageStreamCompleter._handleCodecReady (package:flutter/src/painting/image_stream.dart:1021)
<asynchronous suspension>
[error] | 7:36:57 646ms | _ErrorHandler: https://www.tsdm39.com/uc_server/data/avatar/002/23/14/35_avatar_middle.jpg?mobile=no DioExceptionType.badResponse: error: null, status code: 404
[exception] | 7:36:57 648ms | ImageCacheProvider: handle raw error:
HttpHandshakeFailedException(message: This exception was thrown because the response has a status code of 404 and RequestOptions.validateStatus was configured to throw for this status code.
The status code of 404 has the following meaning: "Client error - the request contains bad syntax or cannot be fulfilled"
Read more about status codes at https://developer.mozilla.org/en-US/docs/Web/HTTP/Status
In order to resolve this exception you typically have either to verify and fix your request code or you have to fix the server code.
, statusCode: 404, headers: date: Sun, 22 Feb 2026 23:36:57 GMT
content-length: 1163
server: Microsoft-IIS/7.5
content-type: text/html
, stackTrace: #0 new AppException (package:tsdm_client/exceptions/exceptions.dart:78)
#1 new _MixinApplication395&AppException&HttpHandshakeFailedExceptionMappable (package:tsdm_client/exceptions/exceptions.dart)
#2 new HttpHandshakeFailedException (package:tsdm_client/exceptions/exceptions.dart:109)
#3 mapException (package:tsdm_client/shared/providers/net_client_provider/net_client_provider.dart:25)
#4 new TaskEither.tryCatch.<anonymous closure> (package:fpdart/src/task_either.dart:286)
<asynchronous suspension>
#5 ImageCacheProvider.getOrMakeCache (package:tsdm_client/shared/providers/image_cache_provider/image_cache_provider.dart:209)
<asynchronous suspension>
#6 CachedImageProvider._loadAsync (package:tsdm_client/widgets/cached_image/cached_image_provider.dart:108)
<asynchronous suspension>
#7 MultiFrameImageStreamCompleter._handleCodecReady (package:flutter/src/painting/image_stream.dart:1021)
<asynchronous suspension>
)
StackTrace: #0 ImageCacheProvider.getOrMakeCache (package:tsdm_client/shared/providers/image_cache_provider/image_cache_provider.dart:213)
<asynchronous suspension>
#1 CachedImageProvider._loadAsync (package:tsdm_client/widgets/cached_image/cached_image_provider.dart:108)
<asynchronous suspension>
#2 MultiFrameImageStreamCompleter._handleCodecReady (package:flutter/src/painting/image_stream.dart:1021)
<asynchronous suspension>
[exception] | 7:36:58 343ms | [KtHttp] GET failed on https://images2.imgbox.com/16/98/QTahtvFA_o.gif
PlatformException(KT_HTTP_ERROR, failed to perform http GET, SSL handshake aborted: ssl=0x72bea33ac8: I/O error during system call, Connection reset by peer, null)
StackTrace: #0 StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:653)
#1 MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:366)
<asynchronous suspension>
#2 _AndroidHttpMethodChannel._get (package:tsdm_client/shared/providers/net_client_provider/net_client_provider_android.dart:21)
<asynchronous suspension>
#3 KotlinHttpClient._get (package:tsdm_client/shared/providers/net_client_provider/net_client_provider_android.dart:131)
<asynchronous suspension>
#4 KotlinHttpClientAdapter.fetch (package:tsdm_client/shared/providers/net_client_provider/net_client_provider_android.dart:186)
<asynchronous suspension>
#5 CancelableCompleter.complete.<anonymous closure> (package:async/src/cancelable_operation.dart:433)
<asynchronous suspension>
[error] | 7:36:58 346ms | _ErrorHandler: https://images2.imgbox.com/16/98/QTahtvFA_o.gif DioExceptionType.unknown: error: ClientException: null raw response, status code: null
[exception] | 7:36:58 348ms | ImageCacheProvider: handle raw error:
HttpHandshakeFailedException(message: <unknown error>, statusCode: null, headers: null, stackTrace: #0 new AppException (package:tsdm_client/exceptions/exceptions.dart:78)
#1 new _MixinApplication395&AppException&HttpHandshakeFailedExceptionMappable (package:tsdm_client/exceptions/exceptions.dart)
#2 new HttpHandshakeFailedException (package:tsdm_client/exceptions/exceptions.dart:109)
#3 mapException (package:tsdm_client/shared/providers/net_client_provider/net_client_provider.dart:25)
#4 new TaskEither.tryCatch.<anonymous closure> (package:fpdart/src/task_either.dart:286)
<asynchronous suspension>
#5 ImageCacheProvider.getOrMakeCache (package:tsdm_client/shared/providers/image_cache_provider/image_cache_provider.dart:209)
<asynchronous suspension>
#6 CachedImageProvider._loadAsync (package:tsdm_client/widgets/cached_image/cached_image_provider.dart:108)
<asynchronous suspension>
#7 MultiFrameImageStreamCompleter._handleCodecReady (package:flutter/src/painting/image_stream.dart:1021)
<asynchronous suspension>
)
StackTrace: #0 ImageCacheProvider.getOrMakeCache (package:tsdm_client/shared/providers/image_cache_provider/image_cache_provider.dart:213)
<asynchronous suspension>
#1 CachedImageProvider._loadAsync (package:tsdm_client/widgets/cached_image/cached_image_provider.dart:108)
<asynchronous suspension>
#2 MultiFrameImageStreamCompleter._handleCodecReady (package:flutter/src/painting/image_stream.dart:1021)
<asynchronous suspension>
[debug] | 7:37:06 298ms | RootLocationCubit: enter page /dialog/jumpPage
[debug] | 7:37:07 394ms | build cookie with user info: null
[exception] | 7:37:07 737ms | [KtHttp] GET failed on https://i.ytimg.com/vi/UNEEk-qg2qg/maxresdefault.jpg
PlatformException(KT_HTTP_ERROR, failed to perform http GET, failed to connect to i.ytimg.com/2a03:2880:f129:83:face:b00c:0:25de (port 443) from /2409:8a00:dd1:ac61:111b:1e78:c67d:4056 (port 40878) after 10000ms, null)
StackTrace: #0 StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:653)
#1 MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:366)
<asynchronous suspension>
#2 _AndroidHttpMethodChannel._get (package:tsdm_client/shared/providers/net_client_provider/net_client_provider_android.dart:21)
<asynchronous suspension>
#3 KotlinHttpClient._get (package:tsdm_client/shared/providers/net_client_provider/net_client_provider_android.dart:131)
<asynchronous suspension>
#4 KotlinHttpClientAdapter.fetch (package:tsdm_client/shared/providers/net_client_provider/net_client_provider_android.dart:186)
<asynchronous suspension>
#5 CancelableCompleter.complete.<anonymous closure> (package:async/src/cancelable_operation.dart:433)
<asynchronous suspension>
[error] | 7:37:07 740ms | _ErrorHandler: https://i.ytimg.com/vi/UNEEk-qg2qg/maxresdefault.jpg DioExceptionType.unknown: error: ClientException: null raw response, status code: null
[exception] | 7:37:07 742ms | ImageCacheProvider: handle raw error:
HttpHandshakeFailedException(message: <unknown error>, statusCode: null, headers: null, stackTrace: #0 new AppException (package:tsdm_client/exceptions/exceptions.dart:78)
#1 new _MixinApplication395&AppException&HttpHandshakeFailedExceptionMappable (package:tsdm_client/exceptions/exceptions.dart)
#2 new HttpHandshakeFailedException (package:tsdm_client/exceptions/exceptions.dart:109)
#3 mapException (package:tsdm_client/shared/providers/net_client_provider/net_client_provider.dart:25)
#4 new TaskEither.tryCatch.<anonymous closure> (package:fpdart/src/task_either.dart:286)
<asynchronous suspension>
#5 ImageCacheProvider.getOrMakeCache (package:tsdm_client/shared/providers/image_cache_provider/image_cache_provider.dart:209)
<asynchronous suspension>
#6 CachedImageProvider._loadAsync (package:tsdm_client/widgets/cached_image/cached_image_provider.dart:108)
<asynchronous suspension>
#7 MultiFrameImageStreamCompleter._handleCodecReady (package:flutter/src/painting/image_stream.dart:1021)
<asynchronous suspension>
)
StackTrace: #0 ImageCacheProvider.getOrMakeCache (package:tsdm_client/shared/providers/image_cache_provider/image_cache_provider.dart:213)
<asynchronous suspension>
#1 CachedImageProvider._loadAsync (package:tsdm_client/widgets/cached_image/cached_image_provider.dart:108)
<asynchronous suspension>
#2 MultiFrameImageStreamCompleter._handleCodecReady (package:flutter/src/painting/image_stream.dart:1021)
<asynchronous suspension>
[debug] | 7:37:08 24ms | _ThreadPageState: save thread visit history tid=1260566
[debug] | 7:37:08 89ms | _PostListState: scroll to pid: 77658588
[error] | 7:37:09 12ms | _ErrorHandler: https://www.tsdm39.com/uc_server/data/avatar/000/36/68/06_avatar_middle.jpg?mobile=no DioExceptionType.badResponse: error: null, status code: 404
[exception] | 7:37:09 13ms | ImageCacheProvider: handle raw error:
HttpHandshakeFailedException(message: This exception was thrown because the response has a status code of 404 and RequestOptions.validateStatus was configured to throw for this status code.
The status code of 404 has the following meaning: "Client error - the request contains bad syntax or cannot be fulfilled"
Read more about status codes at https://developer.mozilla.org/en-US/docs/Web/HTTP/Status
In order to resolve this exception you typically have either to verify and fix your request code or you have to fix the server code.
, statusCode: 404, headers: date: Sun, 22 Feb 2026 23:37:08 GMT
content-length: 1163
server: Microsoft-IIS/7.5
content-type: text/html
, stackTrace: #0 new AppException (package:tsdm_client/exceptions/exceptions.dart:78)
#1 new _MixinApplication395&AppException&HttpHandshakeFailedExceptionMappable (package:tsdm_client/exceptions/exceptions.dart)
#2 new HttpHandshakeFailedException (package:tsdm_client/exceptions/exceptions.dart:109)
#3 mapException (package:tsdm_client/shared/providers/net_client_provider/net_client_provider.dart:25)
#4 new TaskEither.tryCatch.<anonymous closure> (package:fpdart/src/task_either.dart:286)
<asynchronous suspension>
#5 ImageCacheProvider.getOrMakeCache (package:tsdm_client/shared/providers/image_cache_provider/image_cache_provider.dart:209)
<asynchronous suspension>
#6 CachedImageProvider._loadAsync (package:tsdm_client/widgets/cached_image/cached_image_provider.dart:108)
<asynchronous suspension>
#7 MultiFrameImageStreamCompleter._handleCodecReady (package:flutter/src/painting/image_stream.dart:1021)
<asynchronous suspension>
)
StackTrace: #0 ImageCacheProvider.getOrMakeCache (package:tsdm_client/shared/providers/image_cache_provider/image_cache_provider.dart:213)
<asynchronous suspension>
#1 CachedImageProvider._loadAsync (package:tsdm_client/widgets/cached_image/cached_image_provider.dart:108)
<asynchronous suspension>
#2 MultiFrameImageStreamCompleter._handleCodecReady (package:flutter/src/painting/image_stream.dart:1021)
<asynchronous suspension>
[debug] | 7:37:10 903ms | build cookie with user info: null
[debug] | 7:37:11 459ms | _ThreadPageState: save thread visit history tid=1260566
[debug] | 7:37:13 535ms | RootLocationCubit: enter page <editor>
[debug] | 7:37:13 538ms | ReplyBarController: update reply action
[debug] | 7:37:19 102ms | build cookie with user info: null
[exception] | 7:37:19 397ms | [KtHttp] GET failed on https://i.imgur.com/jwKJp39.jpg
PlatformException(KT_HTTP_ERROR, failed to perform http GET, failed to connect to i.imgur.com/2a03:2880:f10d:83:face:b00c:0:25de (port 443) from /2409:8a00:dd1:ac61:111b:1e78:c67d:4056 (port 34828) after 10000ms, null)
StackTrace: #0 StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:653)
#1 MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:366)
<asynchronous suspension>
#2 _AndroidHttpMethodChannel._get (package:tsdm_client/shared/providers/net_client_provider/net_client_provider_android.dart:21)
<asynchronous suspension>
#3 KotlinHttpClient._get (package:tsdm_client/shared/providers/net_client_provider/net_client_provider_android.dart:131)
<asynchronous suspension>
#4 KotlinHttpClientAdapter.fetch (package:tsdm_client/shared/providers/net_client_provider/net_client_provider_android.dart:186)
<asynchronous suspension>
#5 CancelableCompleter.complete.<anonymous closure> (package:async/src/cancelable_operation.dart:433)
<asynchronous suspension>
[error] | 7:37:19 399ms | _ErrorHandler: https://i.imgur.com/jwKJp39.jpg DioExceptionType.unknown: error: ClientException: null raw response, status code: null
[exception] | 7:37:19 400ms | ImageCacheProvider: handle raw error:
HttpHandshakeFailedException(message: <unknown error>, statusCode: null, headers: null, stackTrace: #0 new AppException (package:tsdm_client/exceptions/exceptions.dart:78)
#1 new _MixinApplication395&AppException&HttpHandshakeFailedExceptionMappable (package:tsdm_client/exceptions/exceptions.dart)
#2 new HttpHandshakeFailedException (package:tsdm_client/exceptions/exceptions.dart:109)
#3 mapException (package:tsdm_client/shared/providers/net_client_provider/net_client_provider.dart:25)
#4 new TaskEither.tryCatch.<anonymous closure> (package:fpdart/src/task_either.dart:286)
<asynchronous suspension>
#5 ImageCacheProvider.getOrMakeCache (package:tsdm_client/shared/providers/image_cache_provider/image_cache_provider.dart:209)
<asynchronous suspension>
#6 CachedImageProvider._loadAsync (package:tsdm_client/widgets/cached_image/cached_image_provider.dart:108)
<asynchronous suspension>
#7 MultiFrameImageStreamCompleter._handleCodecReady (package:flutter/src/painting/image_stream.dart:1021)
<asynchronous suspension>
)
StackTrace: #0 ImageCacheProvider.getOrMakeCache (package:tsdm_client/shared/providers/image_cache_provider/image_cache_provider.dart:213)
<asynchronous suspension>
#1 CachedImageProvider._loadAsync (package:tsdm_client/widgets/cached_image/cached_image_provider.dart:108)
<asynchronous suspension>
#2 MultiFrameImageStreamCompleter._handleCodecReady (package:flutter/src/painting/image_stream.dart:1021)
<asynchronous suspension>
[info] | 7:37:19 585ms | _GzipEncodingChecker: removing gzip encoding in request
[debug] | 7:37:20 703ms | RootLocationCubit: leave page <editor>
[debug] | 7:37:21 827ms | RootLocationCubit: enter page <editor>
[debug] | 7:37:21 829ms | ReplyBarController: update reply action
[debug] | 7:37:26 352ms | build cookie with user info: null
[info] | 7:37:26 836ms | _GzipEncodingChecker: removing gzip encoding in request
[exception] | 7:37:27 172ms | ReplyBloc: handle error:
ReplyToPostResultFailedException(message: null, stackTrace: #0 new AppException (package:tsdm_client/exceptions/exceptions.dart:78)
#1 new _MixinApplication428&AppException&ReplyToPostResultFailedExceptionMappable (package:tsdm_client/exceptions/exceptions.dart)
#2 new ReplyToPostResultFailedException (package:tsdm_client/exceptions/exceptions.dart)
#3 ReplyRepository.replyToPost.<anonymous closure> (package:tsdm_client/widgets/reply_bar/repository/reply_repository.dart:100)
<asynchronous suspension>
#4 ReplyBloc._onReplyToPostRequested (package:tsdm_client/widgets/reply_bar/bloc/reply_bloc.dart:50)
<asynchronous suspension>
#5 Bloc.on.<anonymous closure>.handleEvent (package:bloc/src/bloc.dart:226)
<asynchronous suspension>
)
StackTrace: #0 new AppException (package:tsdm_client/exceptions/exceptions.dart:78)
#1 new _MixinApplication428&AppException&ReplyToPostResultFailedExceptionMappable (package:tsdm_client/exceptions/exceptions.dart)
#2 new ReplyToPostResultFailedException (package:tsdm_client/exceptions/exceptions.dart)
#3 ReplyRepository.replyToPost.<anonymous closure> (package:tsdm_client/widgets/reply_bar/repository/reply_repository.dart:100)
<asynchronous suspension>
#4 ReplyBloc._onReplyToPostRequested (package:tsdm_client/widgets/reply_bar/bloc/reply_bloc.dart:50)
<asynchronous suspension>
#5 Bloc.on.<anonymous closure>.handleEvent (package:bloc/src/bloc.dart:226)
<asynchronous suspension>
[debug] | 7:37:28 248ms | build cookie with user info: null
[info] | 7:37:28 659ms | _GzipEncodingChecker: removing gzip encoding in request
[exception] | 7:37:29 304ms | ReplyBloc: handle error:
ReplyToPostResultFailedException(message: null, stackTrace: #0 new AppException (package:tsdm_client/exceptions/exceptions.dart:78)
#1 new _MixinApplication428&AppException&ReplyToPostResultFailedExceptionMappable (package:tsdm_client/exceptions/exceptions.dart)
#2 new ReplyToPostResultFailedException (package:tsdm_client/exceptions/exceptions.dart)
#3 ReplyRepository.replyToPost.<anonymous closure> (package:tsdm_client/widgets/reply_bar/repository/reply_repository.dart:100)
<asynchronous suspension>
#4 ReplyBloc._onReplyToPostRequested (package:tsdm_client/widgets/reply_bar/bloc/reply_bloc.dart:50)
<asynchronous suspension>
#5 Bloc.on.<anonymous closure>.handleEvent (package:bloc/src/bloc.dart:226)
<asynchronous suspension>
)
StackTrace: #0 new AppException (package:tsdm_client/exceptions/exceptions.dart:78)
#1 new _MixinApplication428&AppException&ReplyToPostResultFailedExceptionMappable (package:tsdm_client/exceptions/exceptions.dart)
#2 new ReplyToPostResultFailedException (package:tsdm_client/exceptions/exceptions.dart)
#3 ReplyRepository.replyToPost.<anonymous closure> (package:tsdm_client/widgets/reply_bar/repository/reply_repository.dart:100)
<asynchronous suspension>
#4 ReplyBloc._onReplyToPostRequested (package:tsdm_client/widgets/reply_bar/bloc/reply_bloc.dart:50)
<asynchronous suspension>
#5 Bloc.on.<anonymous closure>.handleEvent (package:bloc/src/bloc.dart:226)
<asynchronous suspension>
[debug] | 7:37:30 115ms | build cookie with user info: null
[info] | 7:37:30 840ms | _GzipEncodingChecker: removing gzip encoding in request
[debug] | 7:37:31 753ms | RootLocationCubit: leave page <editor>
[debug] | 7:37:32 280ms | RootLocationCubit: enter page <editor>
[debug] | 7:37:32 285ms | ReplyBarController: update reply action
[debug] | 7:37:37 357ms | AutoNotificationCubit: running auto fetch...
[debug] | 7:37:37 360ms | AutoNotificationCubit: auto fetch since 1771803398
[debug] | 7:37:37 360ms | build cookie with user info: null
[debug] | 7:37:37 891ms | AutoNotificationCubit: auto fetch finished with data
[debug] | 7:37:37 891ms | AutoNotificationCubit: update last fetch notification time to started time 2026-02-23 07:37:37.358230
[debug] | 7:37:37 891ms | NotificationBloc: saving notification: notice=0 personalMessage=0 broadcastMessage=0 latestTime=null
[debug] | 7:37:38 0ms | NotificationBloc: load local notification: notice=500 personalMessage=58 broadcastMessage=7
[debug] | 7:37:38 179ms | build cookie with user info: null
[info] | 7:37:38 583ms | _GzipEncodingChecker: removing gzip encoding in request
[debug] | 7:37:39 239ms | RootLocationCubit: leave page <editor>
[debug] | 7:37:46 9ms | RootLocationCubit: enter page <editor>
[debug] | 7:37:46 12ms | ReplyBarController: update reply action
[debug] | 7:37:54 794ms | build cookie with user info: null
[info] | 7:37:56 541ms | _GzipEncodingChecker: removing gzip encoding in request
[debug] | 7:37:58 195ms | RootLocationCubit: leave page <editor>
[debug] | 7:38:01 362ms | RootLocationCubit: enter page <editor>
[debug] | 7:38:01 372ms | ReplyBarController: update reply action
[debug] | 7:38:02 333ms | RootLocationCubit: leave page <editor>
[debug] | 7:38:05 347ms | RootLocationCubit: enter page <editor>
[debug] | 7:38:05 359ms | ReplyBarController: update reply action
[debug] | 7:38:37 382ms | AutoNotificationCubit: running auto fetch...
[debug] | 7:38:37 384ms | AutoNotificationCubit: auto fetch since 1771803458
[debug] | 7:38:37 384ms | build cookie with user info: null
[debug] | 7:38:38 301ms | AutoNotificationCubit: auto fetch finished with data
[debug] | 7:38:38 301ms | AutoNotificationCubit: update last fetch notification time to started time 2026-02-23 07:38:37.382817
[debug] | 7:38:38 303ms | NotificationBloc: saving notification: notice=0 personalMessage=0 broadcastMessage=0 latestTime=null
[debug] | 7:38:38 447ms | NotificationBloc: load local notification: notice=500 personalMessage=58 broadcastMessage=7
[debug] | 7:39:07 834ms | build cookie with user info: null
[info] | 7:39:08 280ms | _GzipEncodingChecker: removing gzip encoding in request
[debug] | 7:39:08 760ms | RootLocationCubit: leave page <editor>
[error] | 7:39:09 392ms |
Null check operator used on a null value
StackTrace: #0 State.context (package:flutter/src/widgets/framework.dart:959)
#1 _NoticeCardV2State._onUrlLaunched (package:tsdm_client/widgets/card/notice_card_v2.dart:52)
#2 _NoticeCardV2State.build.<anonymous closure> (package:tsdm_client/widgets/card/notice_card_v2.dart:168)
#3 _Muncher.munchNode.<anonymous closure> (package:tsdm_client/utils/html/html_muncher.dart:310)
<asynchronous suspension>
[debug] | 7:39:10 832ms | dispatch url: https://www.tsdm39.com/forum.php?mod=redirect&goto=findpost&ptid=1260566&pid=77659212
[debug] | 7:39:10 863ms | RootLocationCubit: enter page /thread/v1
[debug] | 7:39:10 863ms | build cookie with user info: null
[info] | 7:39:10 865ms | _GzipEncodingChecker: removing gzip encoding in request
[debug] | 7:39:11 696ms | _ThreadPageState: save thread visit history tid=1260566
[debug] | 7:39:11 737ms | _PostListState: scroll to pid: 77659212
[debug] | 7:39:11 737ms | _PostListState: scroll to position: 8
[debug] | 7:39:17 976ms | _PostEditPageState: enter post edit page: editType=PostEditType.editPost, fid=4
[debug] | 7:39:18 6ms | RootLocationCubit: enter page /editPost/:editType/:fid
[debug] | 7:39:18 7ms | build cookie with user info: null
[debug] | 7:39:37 355ms | AutoNotificationCubit: running auto fetch...
[debug] | 7:39:37 357ms | AutoNotificationCubit: auto fetch since 1771803518
[debug] | 7:39:37 357ms | build cookie with user info: null
[debug] | 7:39:37 708ms | AutoNotificationCubit: auto fetch finished with data
[debug] | 7:39:37 709ms | AutoNotificationCubit: update last fetch notification time to started time 2026-02-23 07:39:37.355445
[debug] | 7:39:37 711ms | NotificationBloc: saving notification: notice=0 personalMessage=0 broadcastMessage=0 latestTime=null
[debug] | 7:39:37 831ms | NotificationBloc: load local notification: notice=500 personalMessage=58 broadcastMessage=7
[debug] | 7:39:39 523ms | build cookie with user info: null
[info] | 7:39:39 542ms | _GzipEncodingChecker: removing gzip encoding in request
[error] | 7:39:41 331ms |
Null check operator used on a null value
StackTrace: #0 State.context (package:flutter/src/widgets/framework.dart:959)
#1 _NoticeCardV2State._onUrlLaunched (package:tsdm_client/widgets/card/notice_card_v2.dart:52)
#2 _NoticeCardV2State.build.<anonymous closure> (package:tsdm_client/widgets/card/notice_card_v2.dart:168)
#3 _Muncher.munchNode.<anonymous closure> (package:tsdm_client/utils/html/html_muncher.dart:310)
<asynchronous suspension>
[debug] | 7:39:42 379ms | dispatch url: https://www.tsdm39.com/forum.php?mod=redirect&goto=findpost&ptid=1260566&pid=77659212
[debug] | 7:39:42 413ms | RootLocationCubit: enter page /thread/v1
[debug] | 7:39:42 414ms | build cookie with user info: null
[info] | 7:39:42 417ms | _GzipEncodingChecker: removing gzip encoding in request
[debug] | 7:39:43 159ms | _ThreadPageState: save thread visit history tid=1260566
[debug] | 7:39:43 184ms | _PostListState: scroll to pid: 77659212
[debug] | 7:39:43 184ms | _PostListState: scroll to position: 8
[debug] | 7:39:46 904ms | NotificationBloc: mark notice: RecordMarkNotice(uid: 1889734, nid: 9947954, alreadyRead: true)
[debug] | 7:39:48 273ms | RootLocationCubit: enter page /notice
[info] | 7:39:48 759ms | AutoNotificationCubit: stop auto fetch with duration 0:01:00.000000
[info] | 7:39:48 759ms | AutoNotificationCubit: start auto fetch with duration 0:01:00.000000
[debug] | 7:39:49 771ms | RootLocationCubit: enter page /settings
[debug] | 7:39:50 995ms | RootLocationCubit: enter page /about
[debug] | 7:39:54 921ms | RootLocationCubit: enter page /debugLogReactions are currently unavailable
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working