Ticket #4296: ContainerWindow.cpp.diff

File ContainerWindow.cpp.diff, 854 bytes (added by jonas.kirilla, 15 years ago)
  • src/kits/tracker/ContainerWindow.cpp

     
    253253
    254254                unload_add_on(addonImage);
    255255                return B_OK;
    256             } else
     256            } else {
    257257                PRINT(("couldn't find process_refs\n"));
     258                unload_add_on(addonImage);
    258259
    259             unload_add_on(addonImage);
     260                // dirRef might be useful - add to message
     261                BEntry entry(&dirRef);
     262                if (entry.InitCheck() == B_OK && entry.Exists())
     263                    refsMessagePtr.get()->AddRef("dir_ref", &dirRef);
     264
     265                // try launch as application
     266                result = be_roster->Launch(&addonRef, refsMessagePtr.get());
     267
     268                if (result == B_OK || result == B_ALREADY_RUNNING) {
     269                    return B_OK;
     270                }
     271            }
    260272        } else
    261273            result = addonImage;
    262274    }