You are here

Pidgin Portable functions differently than regular Pidgin?

14 posts / 0 new
Last post
htismaqe
Offline
Last seen: 8 years 5 months ago
Joined: 2010-10-01 10:54
Pidgin Portable functions differently than regular Pidgin?

I have been using Pidgin Portable for a long time. Recently, I setup my wife with a USB Key running Appetizer/PortableApps so she could take her apps to different PCs in the house.

Tonight while messaging her, she was complaining that some of my messages would show up in one window, while some in were showing up in a separate chat window. I had her setup for single-window, tabbed interface so I was confused.

When I went to see what she was doing, I noticed that Pidgin Portable was running in 3 different instances. She's never used it before and wasn't aware that Pidgin would take a bit to startup. She clicked it three times and all three times it started a new instance of Pidgin Portable.

I verified the behavior with my install of Pidgin Portable on a different USB/PC. Clicking Pidgin Portable opens an instance of Pidgin Portable each time - I had 5 instances running at once.

I looked up how to lock Pidgin to only one instance but from what I can tell, I can't - allowing only 1 instance appears to be the default behavior. There's no instructions to DISALLOW multiple instances, only instructions to allow multiple instances.

http://developer.pidgin.im/wiki/Using%20Pidgin#HowdoIrunmultipleinstance...

Pidgin will, by default, prevent multiple instances from running simultaneously. You can override this restriction by defining the PIDGIN_MULTI_INST environment variable or by specifying the -m command line parameter. If you do this, you may find the -c parameter useful to specify unique configuration directories for each instance (e.g. -c c:\home\.pidgin-alt).

I checked the Pidgin Portable modifications and the first one listed is:

Friendly Launcher - Pidgin Portable Launcher is included by default. This sets certain environment variables (PATH, HOME, GTK_BASEPATH) to enable Pidgin to run from the portable device.

I'm wondering if one of the env variables set by the launcher is PIDGIN_MULTI_INST and it's just not listed. I don't know how to check and see if it's set and more importantly, I don't know how to turn it off.

------------------------------------

EDIT: It appears the launcher is indeed setting the env variable. I found the following line in the LaunchNow section of $(Drive)\PortableApps\PidginPortable\Other\Source\PidginPortableU.nsi:

System::Call 'Kernel32::SetEnvironmentVariable(t, t) i("PIDGIN_MULTI_INST", "1").r0'

I don't know how to disable the behavior, though.

Chris Morgan
Chris Morgan's picture
Offline
Last seen: 9 years 5 months ago
Joined: 2007-04-15 21:08
My guess

(The "modifications" pages are hopelessly out of date and not updated any more.)

Here's my guess as to why it's done: so that Pidgin Portable can run while Pidgin is running. I haven't looked at the launcher source to see if that's true though.

I am a Christian and a developer and moderator here.

“A soft answer turns away wrath, but a harsh word stirs up anger.” – Proverbs 15:1

htismaqe
Offline
Last seen: 8 years 5 months ago
Joined: 2010-10-01 10:54
Is there a way to disable it

Is there a way to disable it temporarily and test?

Setting the variable to "" should turn the feature off, so the line of code wouldn't even have to be removed.

I'm guessing that then I would have to recompile it, though?

I'm just not real sure how to proceed.

Chris Morgan
Chris Morgan's picture
Offline
Last seen: 9 years 5 months ago
Joined: 2007-04-15 21:08
Yep

If you really want it off, you could comment out the line (put a semicolon at the start) and then recompile it with NSIS Portable (Unicode). There may be another reason why it's done that way, though, which I'm not aware of.

I am a Christian and a developer and moderator here.

“A soft answer turns away wrath, but a harsh word stirs up anger.” – Proverbs 15:1

htismaqe
Offline
Last seen: 8 years 5 months ago
Joined: 2010-10-01 10:54
I recompiled it. I monitored

I recompiled it. I monitored the processes both before and after.

Before recompilation, PidginPortable.exe and pidgin-portable.exe ran (and stayed resident while the app was running) just fine.

After recompilation, the result is the same - the setting doesn't prevent the launcher wrapper and the app from running simultaneously.

The result is perfect - after starting Pidgin, clicking on the icon again brings the existing instance to the front instead of starting a new one.

Thanks for your help!!!

Darkbee
Darkbee's picture
Offline
Last seen: 4 years 6 months ago
Joined: 2008-04-14 09:41
No More Than One Location

Out of curiosity, what messaging protocol are you using? Many protocols won't allow you to be signed in from "more than one location" and I'm assuming that each instance of Pidgin counts as a location.

htismaqe
Offline
Last seen: 8 years 5 months ago
Joined: 2010-10-01 10:54
I think the issue in this

I think the issue in this instance is a combination of Yahoo, MSN, and metacontacts.

Neither Yahoo nor MSN allow multiple-instance logins. However, if you have both services associated with a metacontact and start two instances of the app, it's possible that one instance will be logged into MSN while the other into Yahoo.

This results in the message being sent via two different services at the same time.

I don't really know if that's the case, I'm just guessing.

Darkbee
Darkbee's picture
Offline
Last seen: 4 years 6 months ago
Joined: 2008-04-14 09:41
Interesting Topic

I would buy that. I'm not doubting your word or anything, I'm just morbidly curious about the every-day person's ability to "break" software in imaginative and previously un-thought-of ways. Biggrin Something to keep in mind, since I have many imaginative family members using Pidgin. Wink

In any case, in most situations having more than one Pidgin open makes no sense, particularly since you can (I believe) use the same protocol twice for different accounts e.g. Work and Home. You would think this would be the default (and actually mean it), of not allowing multiple instances.

htismaqe
Offline
Last seen: 8 years 5 months ago
Joined: 2010-10-01 10:54
On the first paragraph, I

On the first paragraph, I absolutely agree. I've been using PortableApps for a couple of years, Pidgin included. I let her use it for FIVE MINUTES and she found something I hadn't encountered in 2 plus years! ROFL

Now that I have my kids' PCs to maintain too, I'm trying to consolidate apps so that I'm not spending all my free time fixing stuff. They'll be using PortableApps soon too, so I'm sure they'll find some way to perplex me again. Smile

On the second paragraph, I don't really know about desired behavior in most cases. For instance, with Miranda there was no reason to run multiple instances because you could rename any protocol DLL and use it just fine. For instance, I could create MSN1.dll, MSN2.dll, and MSN3.dll and use 3 MSN accounts simultaneously.

Without looking at the sourcecode, I don't know if this is possible within Pidgin. It's possible that the protocol DLL's aren't "plug and play" like that, which means you would have to use multiple instances of the app to access the same service more than once.

That being said, single-instance IS the default for Pidgin proper. Allowing multiple instances has been set as the default by the PidginPortable launcher. Thankfully the fix was quick and easy.

Darkbee
Darkbee's picture
Offline
Last seen: 4 years 6 months ago
Joined: 2008-04-14 09:41
Seeing Double

I feel your pain, I am in a similar situation. I actually switched from using Miranda to Pidgin because I had set other family members up with Pidgin since it's far more user-friendly. I preferred the lighter-weight Miranda but was willing to concede in order to reduce maintenance burden.

I think I'm correct in saying that my family uses PortableApps pretty much exclusively. I still have a few non-portable apps stragglers in my personal line-up but I'm moving over where possible.

I'm pretty sure that you don't have to do the DLL renaming trick with Pidgin, at least not with the XMPP protocol for sure (and I just tried MSN for kicks, which also works). I'm willing to be you can log in with multiple Yahoo, ICQ and other IDs too. I think they finalized this functionality a few versions back.

In case you didn't know it already, TeamViewerPortable is your friend as far as Family-Tech-Support goes.

htismaqe
Offline
Last seen: 8 years 5 months ago
Joined: 2010-10-01 10:54
I switched from Miranda to

I switched from Miranda to Pidgin because of Sametime support. My company upgraded the core Sametime app and Miranda just stopped working. I tried just about everything but couldn't get it working again. That being said, I'm really not missing Miranda after using Pidgin for so long. As I get older, I start to enjoy simplicity more and more. Smile

Right now, I'm using P-apps mostly for maintenance. I have the spyware scanner, CCleaner, and all the other common tools sitting on a NAS. Especially with Piriform and spyware scanners, they release updates on nearly a daily basis. Now I only have to maintain one copy instead of 6 or 7.

I haven't started utilizing the NAS for applications yet - I would really like to deploy Open Office portably and without having to utilize terminal services. About the only thing I do right now is sync offline files and centrally manage small things (ie. both kids share IE8 favorites stored on the NAS. When one of them finds a fun flash game and bookmarks it, the other can instantly access it via whatever machine they're on).

I just downloaded TeamViewerPortable a couple of days ago - I haven't had a chance to check it out yet.

John T. Haller
John T. Haller's picture
Offline
Last seen: 9 hours 42 min ago
AdminDeveloperModeratorTranslator
Joined: 2005-11-28 22:21
Fixed in 2.7.4

I've fixed this in 2.7.4. By default, multiple instances is disabled now. You can enable it with AllowMultipleInstances.

Sometimes, the impossible can become possible, if you're awesome!

ratcatcher
Offline
Last seen: 7 years 4 months ago
Joined: 2009-06-06 05:49
Weird fonts thing with multiple instances

Not a problem as such but an odd curiosity:

I run two instances of Pidgin from two different drives, each running PortableApps.

The font used in the buddy list, settings, list of plugins, etc, is different between the two instances. But which instance uses which font depends on which is started first. So it's not due to any difference between the configurations of the two Pidgin installations.

This was happening with 2.7.3 so is not connected with any changes in the latest version.

Regards

Nick

htismaqe
Offline
Last seen: 8 years 5 months ago
Joined: 2010-10-01 10:54
Thanks man!

Thanks man!

Log in or register to post comments