Noitidart / Profilist

ff-addon: Profile manager for Australis
https://addons.mozilla.org/en-US/firefox/addon/profilist/?src=github
34 stars 1 forks source link

After clicking on Create New Profile a Profile Missing window pops up. #6

Closed fruchtiger closed 10 years ago

fruchtiger commented 10 years ago

Though this window pops up, a new unnamed profile is created. This occurres on ubuntu 12.04 bug_profilistpng

Noitidart commented 10 years ago

Hey there. Can you please help me by getting some debug messages.

Hi Johann thanks for the report. Can you please help me by giving me the following info:

  1. Please install addon GitHub Extension Installer
  2. Go to DevPrefs GitHub repository: https://github.com/Noitidart/DevPrefs
  3. Click on "Add to Firefox"
  4. Then go to the Profilist Repository
  5. Open Browser Console by pressing Ctrl + Shift + J
  6. Press clear, this will empty the Browser Console
  7. Now back on Github Profilist repository, click on "Add to Firefox". This will install the addon.
  8. Go to menu and click "Create New Profile"
  9. After about 10 seconds please go to Browse Console then copy all the debug messages and paste here
  10. You can now uninstall DevPrefs addon
Noitidart commented 10 years ago

Notes for self:

Noitidart commented 10 years ago

Hey fruchtiger I made the steps above more simple to follow, no need for copy pasting any code, can you please do that and paste back to me the browser console messages.

fruchtiger commented 10 years ago

Hi, im not sure if it worked properly. I had to open the console via the australis menu -> Developer. After the click on Create New Profile, it did not log much.

GET https://ssl.google-analytics.com/__utm.gif [HTTP/1.1 200 OK 16ms] reflow: 0.51ms GET https://ssl.google-analytics.com/__utm.gif [HTTP/1.1 200 OK 11ms] reflow: 1.08ms ReferenceError: reference to undefined property $(...)[0] frameworks-abc81e706df1b74d6ac26c344580917e7afe15bb.js:13 reflow: 2.09ms ReferenceError: reference to undefined property te.event.triggered frameworks-abc81e706df1b74d6ac26c344580917e7afe15bb.js:3

Noitidart commented 10 years ago

Thanks man for the try/effort. Did you install DevPrefs and Profilist from the repositories I linked?

yajd commented 10 years ago

ok i installed ubuntu 12.04.

on open of menu i ge this:

"e on panel showing = " MouseEvent {isTrusted: Getter, isTrusted: true, screenX: 66, screenY: 52, clientX: 0, clientY: 0, ctrlKey: false, shiftKey: false, altKey: false, metaKey: false} bootstrap.js:614
"e.view == e.target.ownerDocument.defaultView == " true bootstrap.js:615
"PUIsync_height updated == 39" bootstrap.js:628
"setting stack height to collapsedheight which = 39" bootstrap.js:638
"in read" bootstrap.js:48
"decoder not inited" bootstrap.js:50
"decoder got" bootstrap.js:53
"starting read" bootstrap.js:54
"read promise started" bootstrap.js:56
ReferenceError: reference to undefined property options.compression osfile_shared_front.jsm:332
"successfully read ini = " {General: Object, default: Object} bootstrap.js:93
"initing prof toolkit" bootstrap.js:668
"initing prof toolkit" bootstrap.js:672
"in initProfToolkit" bootstrap.js:545
"initProfToolkit 1" bootstrap.js:562
"initProfToolkit 2" bootstrap.js:564
"initProfToolkit DONE" bootstrap.js:572
"init done" bootstrap.js:674
"profToolkit.selectedProfile.name = " 0 bootstrap.js:692
"selectedProfileNameFound = " false bootstrap.js:693
"looking for selectedProfile name" bootstrap.js:696
"skipping ini[p] because no IsRelative prop" "ini[p]=" {props: Object} "p=" "General" bootstrap.js:699
"ini[p] is relative" {num: "0", props: Object} bootstrap.js:703
"rel iniDirName=" "j5chb4hi.default" bootstrap.js:706
"rel profToolkit.selectedProfile.rootDirName=" "j5chb4hi.default" bootstrap.js:707
"rel profToolkit.selectedProfile.localDirName=" "j5chb4hi.default" bootstrap.js:708
"iniDirName matches profToolkit.selectedProfile.rootDirName so set selectedProfile.name to this ini[p].Name" "iniDirName" "j5chb4hi.default" "ini[p]=" {num: "0", props: Object} "profToolkit=" {rootPathDefault: "/home/rnd/.mozilla/firefox", localPathDefault: "/home/rnd/.cache/mozilla/firefox", profileCount: 1, selectedProfile: Object, profiles: Object, pathsInIni: Array[1]} bootstrap.js:711
"selectedProfile searching proc done" bootstrap.js:750
"updating stackDOMJson based on profToolkit AND ini" bootstrap.js:761
"stackDOMJson is 0 length" [] bootstrap.js:764
"profToolkit=" {rootPathDefault: "/home/rnd/.mozilla/firefox", localPathDefault: "/home/rnd/.cache/mozilla/firefox", profileCount: 1, selectedProfile: Object, profiles: Object, pathsInIni: Array[1]} bootstrap.js:765
"after updating that profNamesCurrentlyInMenu is = " ["j5chb4hi.default"] bootstrap.js:792
"looking for position in stack of profpath " "profpath = " "j5chb4hi.default" bootstrap.js:797
"index of ini[p].props.Path in stack object is" "j5chb4hi.default" 1 bootstrap.js:811
"stackDOMJson before checking if stackUpdated==true" [Object, Object] bootstrap.js:849
"will now run updateMenuDOM on all windows" bootstrap.js:854
"updatngMenuDOM on this window == " "aDOMWindow = " ChromeWindow {0: ChromeWindow, 1: Window → about:blank, 2: Window → profilist, window: ChromeWindow, location: Getter, top: Getter, gPrintSettingsAreGlobal: false, gSavePrintSettings: false, gFocusedElement: null, PrintUtils: Object, 1034 more…} bootstrap.js:859
"jsonStack was just changed so have to do full dom update" bootstrap.js:987
"in json arr = " 0 bootstrap.js:1000
"identifier  string =" "[label="Create New Profile"]" bootstrap.js:1004
"post ident el = " undefined bootstrap.js:1006
"el created" bootstrap.js:1014
"elClosure label" "Create New Profile" bootstrap.js:1028
"PUIsync_height = " 39 bootstrap.js:1065
"el.boxObject.height = " 0 bootstrap.js:1066
"cumHeight after adding = 39" bootstrap.js:1068
"set el top to " 39 bootstrap.js:1072
"appended" XULElement {labelElement: XULElement, className: "PanelUI-profilist create", align: "", dir: "", flex: "", flexGroup: "", ordinal: "", orient: "", pack: "", hidden: false} bootstrap.js:1084
"in json arr = " 1 bootstrap.js:1000
"identifier  string =" "[path="j5chb4hi.default"]" bootstrap.js:1004
"post ident el = " undefined bootstrap.js:1006
"el created" bootstrap.js:1014
"elClosure label" "default" bootstrap.js:1028
"PUIsync_height = " 39 bootstrap.js:1065
"el.boxObject.height = " 0 bootstrap.js:1066
"cumHeight after adding = 78" bootstrap.js:1068
"set el top to 0" bootstrap.js:1075
"appended" XULElement {labelElement: XULElement, className: "PanelUI-profilist", align: "", dir: "", flex: "", flexGroup: "", ordinal: "", orient: "", pack: "", hidden: false} bootstrap.js:1084
"glboal var of expandedheight does not equal new calced cumheight so update it now" "expandedheight pre update = " 0 "cumHeight=" 78 bootstrap.js:1089
"oldExpandedheight = 0" bootstrap.js:1092
"collapsedheight" 39 bootstrap.js:1109
"expandedheight" 78 bootstrap.js:1110
"checking if label of Create New Profile is in ini" "ini=" {General: Object, default: Object} bootstrap.js:1114
"checking if label of Loading Profiles... is in ini" "ini=" {General: Object, default: Object} bootstrap.js:1114
"this profile is not in ini so remove it" "ini=" {General: Object, default: Object} bootstrap.js:1116
"checking if label of default is in ini" "ini=" {General: Object, default: Object} bootstrap.js:1114
"json=" [Object, Object] bootstrap.js:1130
POST https://github.com/_stats [HTTP/1.1 200 OK 454ms]
yajd commented 10 years ago

now opening menu, then clearning browser console, then clicking of new profile i get this:

"PUIcs_scrollsVis = " false bootstrap.js:1430
"panel height no expanded = 562
footer height with profilist box expanded = 194" bootstrap.js:1449
"no need for adjust" bootstrap.js:1465
"expandedheight on expand = 117" bootstrap.js:1469
"setting stack height to expandedheight which = 117" bootstrap.js:1470
"in read" bootstrap.js:48
"decoder got" bootstrap.js:53
"starting read" bootstrap.js:54
"read promise started" bootstrap.js:56
"cStackHeight = " 117 bootstrap.js:1485
"collapsedheight = " 39 bootstrap.js:1486
"setting stack height to collapsedheight which = 39" bootstrap.js:1517
"collapsed height on collapse == " "stack.boxObject.height = " 117 "stack.style.height = " "39px" bootstrap.js:1519
"successfully read ini = " {General: Object, default: Object, Unnamed Profile 1: Object} bootstrap.js:93
"now that readIni success it will do stuff" bootstrap.js:1300
"will now createProfile with name = " "Unnamed Profile 2" bootstrap.js:1312
"in createProfile create part" bootstrap.js:182
"created ini entry for profName" {num: 2, props: Object} bootstrap.js:208
"rootPathDefaultDirName=" "/home/rnd/.mozilla/firefox/ddeemqxr.Unnamed Profile 2" bootstrap.js:212
"localPathDefaultDirName=" "/home/rnd/.cache/mozilla/firefox/ddeemqxr.Unnamed Profile 2" bootstrap.js:213
"starting promise for make root dir" bootstrap.js:238
"successfully created root dir for profile Unnamed Profile 2 the path is = " "/home/rnd/.mozilla/firefox/ddeemqxr.Unnamed Profile 2" bootstrap.js:243
"successfully created local dir for profile Unnamed Profile 2 the path is = " "/home/rnd/.cache/mozilla/firefox/ddeemqxr.Unnamed Profile 2" bootstrap.js:276
"profiles ini update not yet done" bootstrap.js:220
"root dir not yet made" bootstrap.js:223
"SUCCESS on updating ini with new profile" bootstrap.js:290
"root dir not yet made" bootstrap.js:223
"createProfile promise succesfully completed" bootstrap.js:1316
"running transitionend func" bootstrap.js:1505
"running transitionend func step 2" bootstrap.js:1507
"overflow RESET" bootstrap.js:1511
"succesfully created times.json for profName of Unnamed Profile 2 path is = " "/home/rnd/.mozilla/firefox/ddeemqxr.Unnamed Profile 2/times.json" bootstrap.js:255
"profile launched and now updating prof toolkit with refreshIni 1" bootstrap.js:234
"in read" bootstrap.js:48
"decoder got" bootstrap.js:53
"starting read" bootstrap.js:54
"read promise started" bootstrap.js:56
"successfully read ini = " {General: Object, default: Object, Unnamed Profile 1: Object, Unnamed Profile 2: Object} bootstrap.js:93
"profToolkit.selectedProfile.name = " "default" bootstrap.js:692
"selectedProfileNameFound = " false bootstrap.js:693
"looking for selectedProfile name" bootstrap.js:696
"skipping ini[p] because no IsRelative prop" "ini[p]=" {props: Object} "p=" "General" bootstrap.js:699
"ini[p] is relative" {num: "0", props: Object} bootstrap.js:703
"rel iniDirName=" "j5chb4hi.default" bootstrap.js:706
"rel profToolkit.selectedProfile.rootDirName=" "j5chb4hi.default" bootstrap.js:707
"rel profToolkit.selectedProfile.localDirName=" "j5chb4hi.default" bootstrap.js:708
"iniDirName matches profToolkit.selectedProfile.rootDirName so set selectedProfile.name to this ini[p].Name" "iniDirName" "j5chb4hi.default" "ini[p]=" {num: "0", props: Object} "profToolkit=" {rootPathDefault: "/home/rnd/.mozilla/firefox", localPathDefault: "/home/rnd/.cache/mozilla/firefox", profileCount: 3, selectedProfile: Object, profiles: Object, pathsInIni: Array[3]} bootstrap.js:711
"selectedProfile searching proc done" bootstrap.js:750
"updating stackDOMJson based on profToolkit AND ini" bootstrap.js:761
"stackDOMJson has more than 0 length so:" [Object, Object, Object] bootstrap.js:773
"this stack value is in profToolkit" "stack val = " "Profiles/1olnem4g.Unnamed Profile 1" "pathsInIni" ["j5chb4hi.default", "Profiles/1olnem4g.Unnamed Profile 1", "Profiles/ddeemqxr.Unnamed Profile 2"] bootstrap.js:785
"this stack value is in profToolkit" "stack val = " "j5chb4hi.default" "pathsInIni" ["j5chb4hi.default", "Profiles/1olnem4g.Unnamed Profile 1", "Profiles/ddeemqxr.Unnamed Profile 2"] bootstrap.js:785
"after updating that profNamesCurrentlyInMenu is = " ["Profiles/1olnem4g.Unnamed Profile 1", "j5chb4hi.default"] bootstrap.js:792
"looking for position in stack of profpath " "profpath = " "j5chb4hi.default" bootstrap.js:797
"index of ini[p].props.Path in stack object is" "j5chb4hi.default" 2 bootstrap.js:811
"looking for position in stack of profpath " "profpath = " "Profiles/1olnem4g.Unnamed Profile 1" bootstrap.js:797
"index of ini[p].props.Path in stack object is" "Profiles/1olnem4g.Unnamed Profile 1" 0 bootstrap.js:811
"looking for position in stack of profpath " "profpath = " "Profiles/ddeemqxr.Unnamed Profile 2" bootstrap.js:797
"index of ini[p].props.Path in stack object is" "Profiles/ddeemqxr.Unnamed Profile 2" -1 bootstrap.js:811
"splicing p = " {num: "2", props: Object} "stackDOMjson=" [Object, Object, Object] bootstrap.js:830
"stackDOMJson before checking if stackUpdated==true" [Object, Object, Object, Object] bootstrap.js:849
"will now run updateMenuDOM on all windows" bootstrap.js:854
"updatngMenuDOM on this window == " "aDOMWindow = " ChromeWindow {0: ChromeWindow, 1: Window → about:blank, 2: Window → 6, 3: Window → 9987891, window: ChromeWindow, location: Getter, top: Getter, gPrintSettingsAreGlobal: false, gSavePrintSettings: false, gFocusedElement: null, 1040 more…} bootstrap.js:859
"jsonStack was just changed so have to do full dom update" bootstrap.js:987
"in json arr = " 0 bootstrap.js:1000
"identifier  string =" "[path="Profiles/ddeemqxr.Unnamed Profile 2"]" bootstrap.js:1004
"post ident el = " undefined bootstrap.js:1006
"el created" bootstrap.js:1014
"elClosure label" "Unnamed Profile 2" bootstrap.js:1028
"PUIsync_height = " 39 bootstrap.js:1065
"el.boxObject.height = " 0 bootstrap.js:1066
"cumHeight after adding = 39" bootstrap.js:1068
"set el top to " 39 bootstrap.js:1072
"appended" XULElement {labelElement: XULElement, className: "PanelUI-profilist", align: "", dir: "", flex: "", flexGroup: "", ordinal: "", orient: "", pack: "", hidden: false} bootstrap.js:1084
"in json arr = " 1 bootstrap.js:1000
"identifier  string =" "[path="Profiles/1olnem4g.Unnamed Profile 1"]" bootstrap.js:1004
"post ident el = " XULElement {labelElement: XULElement, className: "PanelUI-profilist", align: "", dir: "", flex: "", flexGroup: "", ordinal: "", orient: "", pack: "", hidden: false} bootstrap.js:1006
"el idented" bootstrap.js:1016
"PUIsync_height = " 39 bootstrap.js:1065
"el.boxObject.height = " 39 bootstrap.js:1066
"cumHeight after adding = 78" bootstrap.js:1068
"set el top to " 78 bootstrap.js:1072
"in json arr = " 2 bootstrap.js:1000
"identifier  string =" "[label="Create New Profile"]" bootstrap.js:1004
"post ident el = " XULElement {labelElement: XULElement, className: "PanelUI-profilist create", align: "", dir: "", flex: "", flexGroup: "", ordinal: "", orient: "", pack: "", hidden: false} bootstrap.js:1006
"el idented" bootstrap.js:1016
"PUIsync_height = " 39 bootstrap.js:1065
"el.boxObject.height = " 39 bootstrap.js:1066
"cumHeight after adding = 117" bootstrap.js:1068
"set el top to " 117 bootstrap.js:1072
"in json arr = " 3 bootstrap.js:1000
"identifier  string =" "[path="j5chb4hi.default"]" bootstrap.js:1004
"post ident el = " XULElement {labelElement: XULElement, className: "PanelUI-profilist", align: "", dir: "", flex: "", flexGroup: "", ordinal: "", orient: "", pack: "", hidden: false} bootstrap.js:1006
"el idented" bootstrap.js:1016
"PUIsync_height = " 39 bootstrap.js:1065
"el.boxObject.height = " 39 bootstrap.js:1066
"cumHeight after adding = 156" bootstrap.js:1068
"set el top to 0" bootstrap.js:1075
"glboal var of expandedheight does not equal new calced cumheight so update it now" "expandedheight pre update = " 117 "cumHeight=" 156 bootstrap.js:1089
"oldExpandedheight = 117" bootstrap.js:1092
"collapsedheight" 39 bootstrap.js:1109
"expandedheight" 156 bootstrap.js:1110
"checking if label of Unnamed Profile 2 is in ini" "ini=" {General: Object, default: Object, Unnamed Profile 1: Object, Unnamed Profile 2: Object} bootstrap.js:1114
"checking if label of Unnamed Profile 1 is in ini" "ini=" {General: Object, default: Object, Unnamed Profile 1: Object, Unnamed Profile 2: Object} bootstrap.js:1114
"checking if label of Create New Profile is in ini" "ini=" {General: Object, default: Object, Unnamed Profile 1: Object, Unnamed Profile 2: Object} bootstrap.js:1114
"checking if label of default is in ini" "ini=" {General: Object, default: Object, Unnamed Profile 1: Object, Unnamed Profile 2: Object} bootstrap.js:1114
"json=" [Object, Object, Object, Object] bootstrap.js:1130

i also get the profile cannot launch error

yajd commented 10 years ago

The issue that needs to be resolved:

Figure out what profileDir is being set to here: http://mxr.mozilla.org/mozilla-central/source/toolkit/profile/nsToolkitProfileService.cpp#669

yajd commented 10 years ago
var me = Services.wm.getMostRecentWindow(null);
var DefProfRt = FileUtils.getFile('DefProfRt', []);
//me.alert(DefProfRt.path)
//me.alert(DefProfRt.persistentDescriptor)
//me.alert(OS.Constants.Path.userApplicationDataDir)
var userApplicationDataDir = new FileUtils.File(OS.Constants.Path.userApplicationDataDir);

var IsRelative = true;
if (IsRelative) {
    var IniPathStr = new FileUtils.File(OS.Constants.Path.userApplicationDataDir); //start at root dir
    var profDirRelToRoot = DefProfRt.getRelativeDescriptor(IniPathStr);
    me.alert('profDirRelToRoot = "' + profDirRelToRoot + '"');
    IniPathStr.appendRelativePath(profDirRelToRoot); //append profiles.ini folder //have to use appendRelativePath because if profDirRelToRoot is not a single folder name or blank we cannot use append it throws error: "Exception: Component returned failure code: 0x80520001 (NS_ERROR_FILE_UNRECOGNIZED_PATH) [nsILocalFile.append]"
    IniPathStr.append('unnamed profile 1'); //append profile folder

    var dummyAppend = 'DUMMY';
    userApplicationDataDir.append(dummyAppend);
    //me.alert(userApplicationDataDir.path)
    var replaceThis = userApplicationDataDir.path.substr(0, userApplicationDataDir.path.length-dummyAppend.length); //because i want to replace the first / or \ or whatever the os uses so we append dummy then just substr out the folder name but leave the path divider/seperator
    me.alert(IniPathStr.path.replace(replaceThis, ''))
} else {
    //var IniPathStr = BLAH.persistantDescriptor;
}
yajd commented 10 years ago

Ok @fruchtiger I think I got it,

please go to my profilist repository: https://github.com/Noitidart/Profilist/

and install it, thats a patch to fix this. btw this is noit from another account

please let me know how it works out.

fruchtiger commented 10 years ago

Hi Noitidart, im not sure how to install via the repository. Do I need to replace the bootstrap.js ?

Noitidart commented 10 years ago

Please install addon GitHub Extension Installer (click this link) and then go to the repository and you'll see a button that says "Add to Firefox". Like this: https://addons.cdn.mozilla.net/img/uploads/previews/full/113/113974.png?modified=1380155370

fruchtiger commented 10 years ago

Works fine now. Good job.

Noitidart commented 10 years ago

Cool thanks man for that confirmation. I plan to release 1.1 tonight with all these bug fixes.