Commit Graph

353 Commits (3efdccbb12fc2d5339870ade39e1b1d54da4fe9b)

Author SHA1 Message Date
Melanie Thielker 3efdccbb12 Committing the LCO database layer. Native MySQL, no ADO. New reconnect
mechanism to prevent prim loss. Preserve link order on sim restart
and drag copy. Fix drag-copied prims' inventories. Fix persistence
of child prim inventories.
2008-11-26 07:34:38 +00:00
Melanie Thielker bb982ab57f Try to keep autoreturn from IM spamming users if the prims take a bit
longer to be deleted
2008-11-23 06:57:38 +00:00
Melanie Thielker ba723a4cf6 Refactor: Scene.ExternalChecks -> Scene.Permissions. Also make all
the internals of the permissions module adapter sane
2008-11-21 22:14:57 +00:00
Justin Clarke Casey 915593bfbc * refactor: Rip out SOP inventory from the partial into a separate class
* SceneObjectPartInventory.cs isn't a particularly good name but it's probably not got a long life
* A proper inventory interface to follow
* Parallel changes for other inventory partial classes to follow at a later date
2008-11-21 21:16:42 +00:00
Jeff Ames ecac5c9c5a Update svn properties, minor formatting cleanup. 2008-11-21 18:44:48 +00:00
Melanie Thielker ee4d4d784e Fully implement object return from the parcel dialog 2008-11-21 07:33:13 +00:00
Sean Dague e6f92044ca From: Christopher Yeoh <cyeoh@au1.ibm.com>
Attached is a patch which fixes mantis bug 2645 where scripts in child
prims
freeze after being unlinked from the root prim. This got introduced
some time after the 0.6 freeze. Have checked test suites
pass even after nant clean  ;-)

http://opensimulator.org/mantis/bug_update_page.php?bug_id=2645

Also removes a redundant ResetIDs call

Regards,

Chris
2008-11-20 00:13:15 +00:00
Melanie Thielker 9d7e503ce3 Prevent a nullref when building new prims while others watch 2008-11-18 17:21:33 +00:00
Melanie Thielker a8e40bed52 Set group on newly rezzed objects to the rezzer's (or rezzing object's)
group
2008-11-17 21:44:09 +00:00
Justin Clarke Casey 99bd7cce2b * Make sure that deleted objects do not send further object updates to the client 2008-11-17 16:33:41 +00:00
Justin Clarke Casey c41903077d * Eliminate SOG.FakeDeleteGroup() since it is now identical with DeleteGroup() (except that is didn't lock the parts, which was a potential race condition)
* Removed fake delete code from LSL_Api.SetFlexi - this code was never activiated anyway and didn't appear to make much sense on the surface
2008-11-17 16:06:50 +00:00
Justin Clarke Casey d54b6608a7 * Stop nulling SOG.m_rootPart and parts on object deletion
* This renders RootPart == null checks useless - the replacement is to check SOG.IsDeleted.  However, in many cases this will not be necessary since updates to deleted parts 
will not be sent to the client
* This should remove any remaining race conditions where an object is deleted while another thread is yet to obtain the root part to perform some operation
* Doing this is probably a necessary prerequisite to moving to a model without a separate SOG and SOP
* Unfortunately it's not possible to eliminate all RootPart == null checks since in some contexts it is currently used to check whether an object was created successfully
2008-11-17 15:40:27 +00:00
Adam Frisby 29eec33506 * Abstracted some methods from SceneObjectGroup to allow them to be overridden more easily. Specifically object creation from XML. 2008-11-16 04:40:36 +00:00
Melanie Thielker 27e557eb98 Introduces the message transfer module. It splits the transfer mechanics off
the IM module and makes it into a module of it's own, which can be used by
all other modules. Removes some ugly hacks. Refer to the IM module to see
how it's used. Also fixes the persistence issue (Mantis #2598)
2008-11-16 00:47:21 +00:00
Homer Horwitz 21b69ac515 Mantis #2621: Thanks idb, for a patch that will persist regularily changed objects better.
Objects will be persisted now MinimumTimeBeforePersistenceConsidered seconds
after the last change, but latest MaximumTimeBeforePersistenceConsidered after
the first change (both are configurable in OpenSim.ini.example and are set to
60 and 600 as default).
2008-11-15 17:52:00 +00:00
Melanie Thielker b43c056c5f Detach dropped attachments from the scene presence so they don't get cleaned
on logout
2008-11-14 15:30:15 +00:00
Justin Clarke Casey cec112c87a * refactor: as per a recent opensim-dev thread, rename InnerScene to SceneGraph to make it more descriptive of its intended function 2008-11-12 20:16:46 +00:00
Justin Clarke Casey 0bda2cf5bc * refactor: clean up SOG xml2 reloading to reuse more code 2008-11-10 21:06:26 +00:00
Justin Clarke Casey b044a0f139 * refactor: Make xml (orig format) loading method reuse existing set root part method
* miscellaneous doc/log message changes
2008-11-10 20:54:34 +00:00
Justin Clarke Casey 13cf89bf3b * minor: remove useless exception catch 2008-11-10 20:10:23 +00:00
Justin Clarke Casey 0e180b0ad3 * refactor: Expose SOG.SetRootPart for outsiders to use rather than setting RootPart and adding the part separately
* Make RootPart read only
2008-11-10 20:04:55 +00:00
Justin Clarke Casey 2d89e562d7 * Refactor the callers of SOG.SetPartAsRoot() to use common code 2008-11-10 19:47:13 +00:00
Justin Clarke Casey 5d1d5a22a9 * Extend basic scene test to retrieve the object from the scene and match uuids
* Decouple sog and sop by removing the need to pass the sog to the sop when it is created - most of the code was doing this operation (and hence duplicating it) anyway
* Remove unused constructors
2008-11-10 18:10:00 +00:00
Melanie Thielker 2589acc5d1 Keep dropped prims from being temp-on-rez and getting cleaned up 2008-11-10 16:11:22 +00:00
Melanie Thielker fc6f3edec6 Stop attachments from causing an update to be sent on every frame in which
an avatar moves.
2008-11-10 05:21:51 +00:00
Jeff Ames bbb8d6fc51 Remove empty OSUUID.cs file. Add copyright headers. Minor formatting cleanup. 2008-11-08 14:28:43 +00:00
Justin Clarke Casey bf9384d594 * Apply http://opensimulator.org/mantis/view.php?id=2582
* Send prim flags as booleans from LLClientView rather than in the native LL array
* Thanks idb
2008-11-07 22:57:32 +00:00
Justin Clarke Casey 4ace67a81d * Fix bug in r7162 where avatars could not move
* Was caused by the lack of a local id.  Local ids are now given from the same sequence as prims, rather than a separate one
* I don't believe this will cause any problems, but please revert to a separate sequence if it does
2008-11-07 22:49:36 +00:00
Justin Clarke Casey fb694fb177 * Rename PrimIDAllocate() to more effectively convey what it does, and put the verb at the front 2008-11-07 21:50:03 +00:00
Justin Clarke Casey 54e10e5b61 * Stop requiring local ids in the SOG constructors.
* These are assigned when the object is attached to the scene
2008-11-07 21:07:14 +00:00
Justin Clarke Casey af35f4cb4a * refactor: stop unnecessary passing of scene to sog copy constructor
* this is now done in AttachToScene()
2008-11-07 19:49:22 +00:00
Justin Clarke Casey f3edbcfa3b * Stop prim attach being signalled twice (it is already been done outside AttachToScene()) 2008-11-07 19:30:20 +00:00
Justin Clarke Casey e34eaec553 * Remove more UpdateParentIDs() calls that are now duplicates 2008-11-07 19:17:24 +00:00
Justin Clarke Casey e08c4376f7 * Apply http://opensimulator.org/mantis/view.php?id=1883
* Fix llSetStatus() and llSetPrimitiveParams()
* Thanks idb
2008-11-07 19:02:55 +00:00
Justin Clarke Casey cd96a33976 * Stop now unnecessary separate local id allocation for restored objects
* remove a debug line I accidentally left in there
2008-11-07 18:52:28 +00:00
Justin Clarke Casey ebd9f22b29 * refactor: allocate local ids to prims only when an object is attached to a scene 2008-11-07 18:46:11 +00:00
Melanie Thielker 48c6d052d9 Attachments, attachments, and, did I say attachments?
Too many fixes to list.
2008-11-07 05:48:44 +00:00
Justin Clarke Casey eec8c6cd6e * Remove SceneObjectPart.AttachToScene() since the remaining instruction can be done by other means 2008-11-06 23:40:58 +00:00
Justin Clarke Casey 0d17ba2a76 * refactor: Attach a scene object to a scene separately from its construction 2008-11-06 22:21:25 +00:00
Adam Frisby 84136c70d8 * Minor cleanup
* Added additional error message when a Object/SOG DB save fails so we can trace why.
2008-11-01 22:20:54 +00:00
Justin Clarke Casey 9366a234cf * refactor: Convert most non SOP methods to use SOG.IsAttachment rather than SOP.IsAttachment 2008-11-01 22:04:35 +00:00
Justin Clarke Casey 7c04d27875 * Introduce an IsAttachment property on the group level (which just returns false if the group is already deleted)
* This is to avoid repetitive null checks - I'm beginning to think that blasting away the root part on object deletion is actually a bad move.  Perhaps we should leave it around 
and let the client ignore any superfluous packets (which it may well do anyway), since we're constantly exposing a race condition
2008-11-01 21:50:07 +00:00
Justin Clarke Casey b03e34dd2d * Fix http://opensimulator.org/mantis/view.php?id=2517
* Don't save attachments on saving oar, which stops them coming back as ghost prims
2008-11-01 21:28:52 +00:00
Jeff Ames 395a0f7977 Minor formatting cleanup. 2008-10-29 03:22:54 +00:00
Dr Scofield 1a06045c98 From: Christopher Yeoh <yeohc@au1.ibm.com>
The attached patch fixes the bug where when linking in a new set of
prims to an already linked set of objects the prims were placed at the
end of the list rather than just after the root prim. ie.  link prim
order result was different on OpenSim compared to an LL server. This
causes a few issues with respect to compatibility of scripts,
especially when using llCreateLink.
2008-10-28 11:26:23 +00:00
Charles Krinke 3c99f027b5 Thank you both Nlin and M.Igarashi for a patch that:
Attached patch protects against a NullReferenceException 
in SceneObjectGroup.stopMoveToTarget (used by LSL function 
llStopMoveToTarget). Thanks to M. Igarashi.
2008-10-22 14:06:07 +00:00
Melanie Thielker 81e220af8d Mantis #2439
MemberwiseClone() also clones the "already backed up" flag, preventing prims
created by drag-copying from being persisted. If such a prim is made the root
prims of a link set, the entire set will not be persisted. Fixed now.
2008-10-20 22:14:24 +00:00
Melanie Thielker 16d8c40a93 A small attempt to make persisting prims more reliable 2008-10-19 00:06:33 +00:00
Melanie Thielker 1bd33aa51a Prevent a null root part from stopping objects from being persisted, also
remove any such objectsd from backup
2008-10-18 15:43:02 +00:00
Melanie Thielker 48890ea349 Guard against a null ref that can prevent objects from being persisted 2008-10-18 15:23:29 +00:00