2025-07-18 19:54 CEST

View Issue Details Jump to Notes ]
IDProjectCategoryView StatusLast Update
0002075Spring engineGeneralpublic2012-03-06 01:55
Reporterabma 
Assigned Toabma 
PrioritynormalSeverityminorReproducibilityalways
StatusresolvedResolutionno change required 
Product Version 
Target VersionFixed in Version 
Summary0002075: Springs detects %PROGRAMFILES%\Spring as read-write, %HOME%\Mygames\Spring as read-only dir in win
DescriptionSpring often prefers the install-directory but it should use the home-directory.

(This only happens, when the user has r/w-access to the installed dir)

copied from an ramdom info-logS:

#
Using read-write data directory: E:\Games\Spring\
#
Using read-only data directory: C:\Documents and Settings\Shiva\My Documents\My Games\Spring\
#
Using read-only data directory: C:\Documents and Settings\Shiva\My Documents\Spring\
#
Using read-only data directory: C:\Documents and Settings\All Users\Application Data\Spring\


or an other one:

#
Using read-write data directory: C:\Program Files (x86)\Spring\
#
Using read-only data directory: C:\Users\Lvpc\Documents\My Games\Spring\
Additional InformationIn detail, it looks like
bool DataDirLocater::IsPortableMode() {

returns always true in windows, because this function checks if in the module-path (where spring.exe is started from) unitsync.dll exist and this is always true in windows (but not in linux)...

my suggestion is:
don't check for unitsync.dll but for portable.txt. (as portable installations only occur within windows). if that file exists, this is a portable "installation"...
TagsNo tags attached.
Checked infolog.txt for Errors
Attached Files

-Relationships
related to 0002246resolvedabma Make newbies life easier (some ideas for first start) 
+Relationships

-Notes

~0005456

abma (administrator)

Last edited: 2010-09-07 19:16

Maybe a spring.manifest file could help here too (can't test it, i've no windows vista/7):

http://helpware.net/VistaCompat.htm

(disable virtualization) this file already seems to be created by springlobby

spring.manifest:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
   <assemblyIdentity version="1.0.0.0" processorArchitecture="X86" name="spring" type="win32"/>
      <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
      <security>
         <requestedPrivileges>
            <requestedExecutionLevel level="asInvoker" uiAccess="false" />
         </requestedPrivileges>
      </security>
   </trustInfo>
</assembly>

~0005478

jK (developer)

Last edited: 2010-09-07 22:50

Spring just selects one dir as write dir.

Think about how the VFS works.
It merge all those dirs into 1 virtual file tree, if you read from one of its nodes the file can be anywhere on your filesystem. But if you now want to create a new node where should it be created? It must be a fixed location from all those possible ones, and spring uses a hierarchy to select this special one (and the install dir is higher than the home dir for windows).
So it doesn't mean that Spring couldn't write to the others, it just means that it won't write to them.

PS: this is wanted because still a lot windows users prefer the all-in-one-dir solution.

~0005479

abma (administrator)

yep, it's clear, that there can be only one write-able directory, but i think this should be by default the %HOME% as the lobby seems to use the writeable dir too, this would allow easier testing...

Microsoft itselfs stores data of games there: https://secure.wikimedia.org/wikipedia/en/wiki/My_Documents#Other_.22My.22_folders

maybe discuss at next meeting?

~0005480

jK (developer)

It was discussed already, search the forum for Auswaschbar's posts.

~0005482

abma (administrator)

http://springrts.com/phpbb/viewtopic.php?f=12&t=15185

i've found no conclusion in the thread. :-/

sound's like to better not change anything at this point...

~0008404

abma (administrator)

its fine as it is
+Notes

-Issue History
Date Modified Username Field Change
2010-09-03 01:01 abma New Issue
2010-09-05 19:35 abma Note Added: 0005456
2010-09-07 19:14 abma Note Edited: 0005456
2010-09-07 19:16 abma Note Edited: 0005456
2010-09-07 22:47 jK Note Added: 0005478
2010-09-07 22:48 jK Note Edited: 0005478
2010-09-07 22:48 jK Note Edited: 0005478
2010-09-07 22:49 jK Note Edited: 0005478
2010-09-07 22:50 jK Note Edited: 0005478
2010-09-08 01:19 abma Note Added: 0005479
2010-09-08 01:22 jK Note Added: 0005480
2010-09-08 03:34 abma Note Added: 0005482
2010-12-06 21:02 abma Relationship added related to 0002246
2012-03-06 01:55 abma Note Added: 0008404
2012-03-06 01:55 abma Status new => resolved
2012-03-06 01:55 abma Resolution open => no change required
2012-03-06 01:55 abma Assigned To => abma
+Issue History