Summary: | [Patch] Marble does not use the shared tile cache on N900 | ||
---|---|---|---|
Product: | [Applications] marble | Reporter: | Enrico Zini <enrico> |
Component: | general | Assignee: | marble-bugs |
Status: | RESOLVED FIXED | ||
Severity: | wishlist | CC: | nienhueser |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | 1.1.0 | ||
Platform: | Maemo 5 | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | 1.1.0 |
Description
Enrico Zini
2011-01-13 11:08:22 UTC
Symlinks do indeed not work due to the fat limitation. I haven't tried it yet, but switching to ext3/4 as the filesystem may be a workaround (with additional benefits). I plan to change the openstreetmap map theme to use that directory for cached tiles in the future. Currently we're lacking support for absolute cache directories however (the cache directories are assumed to be relative to Marble's data directory). Patches are welcome of course. There's not too much code to change, just tracking down where the assumption is made that the path is relative and extending it to handle absolute ones. Afterwards we just need a small patch for openstreetmap.dgml in the Maemo packages to have it work. Dennis, that is the partition that is exported as USB mass storage when connecting the phone to a PC via a USB cable. Yes, reformatting it as ext4 would allow symlinks and it may be a workaround, but that it gives "additional benefits" is, to be polite, a rather debatable statement. (In reply to comment #2) > Dennis, that is the partition that is exported as USB mass storage when > connecting the phone to a PC via a USB cable. Yes. Windows systems would probably not be able to mount it via USB when formatted as ext3. Wouldn't be a problem for me. > Yes, reformatting it as ext4 would allow symlinks and it may be a workaround, > but that it gives "additional benefits" is, to be polite, a rather debatable > statement. I was referring to vfat on the N900 using a large cluster size, wasting space when storing many small files. This is exactly the use case of all tile sharing applications. Ext3/4 in contrast store these files much more efficiently. Patch (Marble part, packaging tbd.) is at http://reviewboard.kde.org/r/6334/ SVN commit 1217541 by nienhueser: Allow using absolute source directories in texture layers in .dgml files. Extend .dgml by a tileSize tag (width and height attribute), usable inside textureLayer tags. Such .dgml files are backwards compatible. Handle 'base tile missing' case more gracefully and return an empty image instead of triggering an assertion. Move the default tile size (675) to global.h and replace hardcoded default tile sizes with it. CCBUG: 249633 CCBUG: 263010 REVIEW: 6334 M +1 -0 data/maps/earth/bluemarble/bluemarble.dgml M +2 -0 data/maps/earth/openstreetmap/openstreetmap.dgml M +2 -1 src/lib/FileStoragePolicy.cpp M +2 -2 src/lib/ImageLoadThread.cpp M +1 -1 src/lib/MapWizard.cpp M +32 -36 src/lib/TileCreator.cpp M +18 -4 src/lib/TileLoader.cpp M +1 -0 src/lib/geodata/handlers/dgml/DgmlAttributeDictionary.cpp M +1 -0 src/lib/geodata/handlers/dgml/DgmlAttributeDictionary.h M +1 -0 src/lib/geodata/handlers/dgml/DgmlElementDictionary.cpp M +1 -0 src/lib/geodata/handlers/dgml/DgmlElementDictionary.h A src/lib/geodata/handlers/dgml/DgmlTileSizeTagHandler.cpp [License: LGPL] A src/lib/geodata/handlers/dgml/DgmlTileSizeTagHandler.h [License: LGPL] M +27 -5 src/lib/geodata/scene/GeoSceneTexture.cpp M +1 -0 src/lib/geodata/scene/GeoSceneTexture.h M +3 -0 src/lib/global.h WebSVN link: http://websvn.kde.org/?view=rev&revision=1217541 SVN commit 1226352 by nienhueser: Allow using absolute source directories in texture layers in .dgml files. Extend .dgml by a tileSize tag (width and height attribute), usable inside textureLayer tags. Such .dgml files are backwards compatible. Handle 'base tile missing' case more gracefully and return an empty image instead of triggering an assertion. Move the default tile size (675) to global.h and replace hardcoded default tile sizes with it. CCBUG: 249633 CCBUG: 263010 REVIEW: 6334 Backport of commit 1217541. M +1 -0 data/maps/earth/bluemarble/bluemarble.dgml M +1 -0 data/maps/earth/openstreetmap/openstreetmap.dgml M +2 -1 src/lib/FileStoragePolicy.cpp M +2 -2 src/lib/ImageLoadThread.cpp M +32 -36 src/lib/TileCreator.cpp M +18 -4 src/lib/TileLoader.cpp M +1 -0 src/lib/geodata/handlers/dgml/DgmlAttributeDictionary.cpp M +1 -0 src/lib/geodata/handlers/dgml/DgmlAttributeDictionary.h M +1 -0 src/lib/geodata/handlers/dgml/DgmlElementDictionary.cpp M +1 -0 src/lib/geodata/handlers/dgml/DgmlElementDictionary.h A src/lib/geodata/handlers/dgml/DgmlTileSizeTagHandler.cpp [License: LGPL] A src/lib/geodata/handlers/dgml/DgmlTileSizeTagHandler.h [License: LGPL] M +27 -5 src/lib/geodata/scene/GeoSceneTexture.cpp M +1 -0 src/lib/geodata/scene/GeoSceneTexture.h M +3 -0 src/lib/global.h WebSVN link: http://websvn.kde.org/?view=rev&revision=1226352 Fixed in the last release, soon in extras. |