Wed, 04 Jun 2025 23:12:27 -0500
Fix log viewing for missing protocols
This works around an issue where we depend on the protocol to determine where
its logs are stored so that you can still view logs for existing accounts if
the protocol plugin is no longer on disk.
This still requires the account to exist with the correct protocol-id to work.
Testing Done:
I manually added on of my old aim accounts that I still have logs from to `accounts.xml`. I then selected `View User Log...` from the `Buddies` menu, selected that aim account and entered a contact who I knew I had logs for and verified that those logs were displayed properly.
Bugs closed: PIDGIN-18096
Reviewed at https://reviews.imfreedom.org/r/4016/
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <!-- Created with Inkscape (http://www.inkscape.org/) --> <svg xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" width="48" height="48" id="svg1307" sodipodi:version="0.32" inkscape:version="0.46" version="1.0" sodipodi:docbase="/home/hbons/Desktop/Gaim Refresh/protocols/48" sodipodi:docname="zephyr.svg" inkscape:export-filename="/home/hbons/Desktop/Gaim Refresh/protocols/48/zephyr.png" inkscape:export-xdpi="90" inkscape:export-ydpi="90" inkscape:output_extension="org.inkscape.output.svg.inkscape"> <defs id="defs1309"> <linearGradient inkscape:collect="always" id="linearGradient2236"> <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop2238" /> <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop2240" /> </linearGradient> <linearGradient inkscape:collect="always" id="linearGradient3150"> <stop style="stop-color:#2e3436;stop-opacity:1;" offset="0" id="stop3152" /> <stop style="stop-color:#2e3436;stop-opacity:0;" offset="1" id="stop3154" /> </linearGradient> <radialGradient inkscape:collect="always" xlink:href="#linearGradient3150" id="radialGradient3156" cx="10.748654" cy="10.457643" fx="10.748654" fy="10.457643" r="6.6449099" gradientTransform="matrix(-0.842757,5.698892e-16,-4.565819e-9,-0.35721,19.80716,14.19321)" gradientUnits="userSpaceOnUse" /> <radialGradient inkscape:collect="always" xlink:href="#linearGradient2236" id="radialGradient2244" cx="25" cy="15.052035" fx="25" fy="15.052035" r="13.03125" gradientTransform="matrix(1.918832,-3.053611e-32,3.873765e-32,2.434201,-22.9708,-29.40113)" gradientUnits="userSpaceOnUse" /> </defs> <sodipodi:namedview id="base" pagecolor="#ffffff" bordercolor="#666666" borderopacity="1.0" inkscape:pageopacity="0.0" inkscape:pageshadow="2" inkscape:zoom="12.749289" inkscape:cx="42.013094" inkscape:cy="29.955991" inkscape:current-layer="layer1" showgrid="true" inkscape:grid-bbox="true" inkscape:document-units="px" fill="#3465a4" showguides="true" inkscape:guide-bbox="true" inkscape:window-width="1268" inkscape:window-height="971" inkscape:window-x="6" inkscape:window-y="21" /> <metadata id="metadata1312"> <rdf:RDF> <cc:Work rdf:about=""> <dc:format>image/svg+xml</dc:format> <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> </cc:Work> </rdf:RDF> </metadata> <g id="layer1" inkscape:label="Layer 1" inkscape:groupmode="layer"> <rect style="opacity:0;fill:none;fill-opacity:1;stroke:#a40000;stroke-width:1.00000012;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="rect3203" width="0" height="5.2291808" x="12.491029" y="11.343686" /> <path sodipodi:type="arc" style="opacity:0.6;fill:url(#radialGradient3156);fill-opacity:1;stroke:none;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path3140" sodipodi:cx="10.748654" sodipodi:cy="10.457643" sodipodi:rx="6.6449099" sodipodi:ry="2.3675451" d="M 17.393564 10.457643 A 6.6449099 2.3675451 0 1 1 4.1037445,10.457643 A 6.6449099 2.3675451 0 1 1 17.393564 10.457643 z" transform="matrix(3.23556,0,0,2.111892,-10.27791,16.9144)" /> <path style="opacity:1;fill:#3465a4;fill-opacity:1;stroke:#204a87;stroke-width:1.00000048;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="M 11.5,6.4993337 L 11.5,14.499492 L 32.553687,14.499492 L 32.553687,18.499569 L 38.479829,18.499569 L 38.479829,7.5185793 L 38.479829,6.4993337 L 11.5,6.4993337 z M 19.552827,20.546173 L 19.552827,26.499725 L 30.471849,26.499725 L 30.471849,20.546173 L 19.552827,20.546173 z M 11.5,28.499765 L 11.5,40.5 L 38.485458,40.5 L 38.485458,32.499843 L 17.510207,32.499843 L 17.510207,28.499765 L 11.5,28.499765 z " id="rect4229" sodipodi:nodetypes="cccccccccccccccccccc" /> <path sodipodi:type="inkscape:offset" inkscape:radius="-0.9828251" inkscape:original="M 11.5 6.5 L 11.5 14.5 L 32.5625 14.5 L 32.5625 18.5 L 38.46875 18.5 L 38.46875 7.53125 L 38.46875 6.5 L 11.5 6.5 z M 19.5625 20.53125 L 19.5625 26.5 L 30.46875 26.5 L 30.46875 20.53125 L 19.5625 20.53125 z M 11.5 28.5 L 11.5 40.5 L 38.5 40.5 L 38.5 32.5 L 17.5 32.5 L 17.5 28.5 L 11.5 28.5 z " xlink:href="#rect4229" style="opacity:0.3;fill:url(#radialGradient2244);fill-opacity:1;stroke:#ffffff;stroke-width:1.00000048;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path4266" inkscape:href="#rect4229" d="M 12.46875,4.46875 L 12.46875,10.53125 L 32.5625,10.53125 C 33.09434,10.538865 33.523635,10.96816 33.53125,11.5 L 33.53125,14.53125 L 37.5,14.53125 L 37.5,4.53125 L 37.5,4.46875 L 12.46875,4.46875 z M 20.53125,18.5 L 20.53125,22.53125 L 29.5,22.53125 L 29.5,18.5 L 20.53125,18.5 z M 12.46875,26.46875 L 12.46875,36.53125 L 37.53125,36.53125 L 37.53125,30.46875 L 17.5,30.46875 C 16.96816,30.461135 16.538865,30.03184 16.53125,29.5 L 16.53125,26.46875 L 12.46875,26.46875 z " /> </g> </svg>