uTox / uTox

µTox the lightest and fluffiest Tox client
Other
1.01k stars 190 forks source link

Crash on settings change #1537

Open Sondro opened 3 years ago

Sondro commented 3 years ago

Overview

  1. uTox version: 0.18.1
  2. Operating system: Win7 64

Issue

So this issue most likely still exists: https://github.com/uTox/uTox/issues/1495

It's very easy to replicate this by spamming the toggles on IPv6, UDP or Proxy (SOCKS 5), but it can also only happen a little while after one click. I tried spamming all the other buttons on the different tabs & they seem fine, just these 3 are issues.

Where is the log located?

I only see a .tox & .save under Users\my_user\AppData\Roaming\Tox.

Do I have to enable logging with a cmd switch?

Also, it would be nice to change the settings path in the settings, no? I think the default should also be the same folder (at least on Windows) so you know you're not leaving behind data on a 3rd party machine. I don't know if that's worth opening another issue for.

ghost commented 3 years ago

It's true, it still happens. It seems to be a second issue, not the same as the previous one.

Core was generated by `./utox -pvvvvv'.
--Type <RET> for more, q to quit, c to continue without paging--
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x00007f2f31ea2c01 in ?? () from /lib64/libc.so.6
[Current thread is 1 (Thread 0x7f2f2da71640 (LWP 21465))]
(gdb) bt full
#0  0x00007f2f31ea2c01 in  () at /lib64/libc.so.6
#1  0x00007f2f31ea34db in  () at /lib64/libc.so.6
#2  0x00007f2f31ea6f22 in  () at /lib64/libc.so.6
#3  0x00007f2f32627ee4 in start_thread () at /lib64/libpthread.so.0
#4  0x00007f2f31f19a5f in clone () at /lib64/libc.so.6

Those three toggles are the problem, because they are tied to restarting toxcore.

Where is the log located?

You can use this:

       --debug <FILE>
              Write all debug output to the specified file.

Also, it would be nice to change the settings path in the settings, no? I think the default should also be the same folder (at least on Windows) so you know you're not leaving behind data on a 3rd party machine. I don't know if that's worth opening another issue for.

We have this one:

       -p or --portable
              Run in portable mode. All data will be saved to the  tox  folder
              in the current working directory, see FILES for more details.

And here are the FILES:

FILES
       All files listed below are located in  $HOME/.config/tox.  If  µTox  is
       running in portable mode, their location will be ./tox.

       tox_save.tox
              tox_save.tox  is  the  file that contains the public/private key
              pair, name, status and contacts. It's compatible with other  Tox
              clients.

       utox_save
              utox_save is µTox' binary config file, it contains settings such
              as language, proxy options, DPI or logging.

       avatars
              The avatars directory contains other  contacts'  avatars.  Files
              are  named  after contacts' public keys (the first 64 characters
              of the ID).

       Tox_Auto_Accept
              Default directory for auto-accepted files in portable mode.

       [public key].txt
              Those are friends' chat logs. µTox supports only 1v1  chat  log‐
              ging for now.

       [public key].fmetadata
              Friend metadata file, currently used for storing aliases.

       [public key][file number].ftoutfo
              Current outgoing file transfers' state. Used for resuming trans‐
              fers across client restarts.

All these are from the man page. There is also -h and --help.

Thanks.

Sondro commented 3 years ago

Thanks.

Do you know if this is a tox core issue -- also, are there any other clients that use the same tox core that may have already solved this issue?

ghost commented 3 years ago

There is only one toxcore. I don't know, but I'd say it's more likely that it's a uTox-specific problem.

Sondro commented 3 years ago

Well I don't know offhand if other clients tweak or branch their own toxcore & then also there is the toxcore vs c-toxcore which says it has extra lib code (& you seem to be knowledgeable here). But the reason I'm asking is that I'm thinking of looking at qTox (or even aTox) & trying to translate features for uTox (or a fork of uTox).

ghost commented 3 years ago

Sorry for the late reply.

The only client I know of that uses a toxcore fork is TRIfA, which is why the Tox project doesn't recommend it.

I don't know about 'toxcore vs c-toxcore', can you clarify?

Unless I'm misunderstanding you, I don't think "translating" features makes sense. The difficult part of the "features" has already been programmed in c-toxcore. The clients only have to use that library. And the code that is written in the clients to implement that feature, that code is very specific to the client.