Bug 223869

Summary: net-im/linux-telegram-desktop: login data not being memorized for each session
Product: Ports & Packages Reporter: Gianguido Sorà <g.sora4>
Component: Individual Port(s)Assignee: Rene Ladan <rene>
Status: Closed FIXED    
Severity: Affects Only Me CC: henry.hu.sh, me, rene
Priority: --- Flags: henry.hu.sh: maintainer-feedback+
Version: Latest   
Hardware: amd64   
OS: Any   
Attachments:
Description Flags
telegram log none

Description Gianguido Sorà 2017-11-25 14:50:59 UTC
Created attachment 188277 [details]
telegram log

Telegram is working fine, I am able to successfully run it and log into my account.

It does not remember the login token retrieved during the login phase, forcing me to do it every time I want to use Telegram.

I've attached a log written by Telegram - after enabling the debug setting by going into the Settings view and writing "debugmode" - of a fresh session, started after having logged in before.
Comment 1 Henry Hu 2017-11-29 21:03:18 UTC
The log seems normal. I have some questions:
1. Which version are you using? Have you tried 1.1.23?
2. Do you have gconf2 installed?

I've tried this myself. The problem can be encountered in the first several runs, but disappears after that. I have not pinpointed the reason yet. When the problem disappears, even if you remove the telegram data directory, it does not happen again.
Comment 2 Rin Cat 2017-12-06 05:04:26 UTC
1. Telegram 1.1.23 still have this issue.
2. I had installed gconf2 in FreeBSD but not in Linux Compatibility.

The problem for me does not disappears after many times login. (and reached login  limitation in a short time)
Comment 3 Henry Hu 2017-12-06 05:18:48 UTC
(In reply to Rin Cat from comment #2)
I just backed up and removed my profile directory. After that, the bug appears and keeps showing up. If I restore the profile directory, it logged in automatically.
I'll compare debug logs to see what's the problem.
Comment 4 Henry Hu 2017-12-06 05:44:34 UTC
The main difference seems to be related to something called 'map'.
In good log:
 Application Info: window created... (messenger.cpp : 140)
 App Info: reading map...
 App Info: reading encrypted map...
 App Info: reading encrypted user settings...
 App Info: encrypted user settings read.
 App Info: reading encrypted mtp data...
 MTP Info: read keys, current: 5, to destroy: 0
 Map read time: 18
 Application Info: local map read... (messenger.cpp : 153)
 MTP Info: new auth key set in SessionData, id 3110985586459605576, setting random server_session 16065225445409715334 (session.cpp : 35)
 
In bad log:
 Application Info: window created... (messenger.cpp : 140)
 App Info: failed to open 'map' for reading (localstorage.cpp : 353)
 Application Info: local map read... (messenger.cpp : 153)
 

In the good profile directory, there is tdata/<long id>/map0. Do you have that file?

Also, just a quick check, if you create /compat/linux/home -> /home, does it help?
Comment 5 Henry Hu 2017-12-09 01:13:24 UTC
Meanwhile, I have created a native port (https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=224193), you may check it out. For what I've seen, it does not have this problem.
Comment 6 Rin Cat 2017-12-09 04:50:39 UTC
(In reply to Henry Hu from comment #4)
Create /compat/linux/home -> /home doesn't help.
I don't have tdata/<long id>/map0, the <long ID> (hex?) is a small file beginning with "TDF", not a directory.

Will try the new port.
Comment 7 Gianguido Sorà 2017-12-25 12:33:27 UTC
Sorry for the delay, but I experienced some problems with my notebook and haven't been able to use FreeBSD for some time.

The native port works, no problem whatsoever, so it's definitely a bug related to the Linux compatibility mode.
Comment 8 Rene Ladan freebsd_committer freebsd_triage 2020-05-12 19:31:18 UTC
Any news? Should we just remove this expired port and let people use the native version instead?
Comment 9 Henry Hu 2020-05-12 23:52:59 UTC
Yes, there's no point in keeping the linux version anymore.
Comment 10 Rene Ladan freebsd_committer freebsd_triage 2020-05-13 10:26:50 UTC
OK, I'll remove this Linux version.