gnu-social/classes
Brion Vibber 9ec24f59ca Drop result ID from data objects on clone(). This keeps the original object working if it was in the middle of a query loop, even if the cloned object falls out of scope and triggers its destructor.
This bug was hitting a number of places where we had the pattern:

$db->find();
while($dbo->fetch()) {
  $x = clone($dbo);
  // do anything with $x other than storing it in an array
}

The cloned object's destructor would trigger on the second run through the loop, freeing the database result set -- not really what we wanted.
(Loops that stored the clones into an array were fine, since the clones stay in scope in the array longer than the original does.)

Detaching the database result from the clone lets us work with its data without interfering with the rest of the query.
In the unlikely even that somebody is making clones in the middle of a query, then trying to continue the query with the clone instead of the original object, well they're gonna be broken now.
2010-03-15 15:58:55 -07:00
..
Avatar.php let avatars be served over SSL 2010-02-11 16:51:15 -05:00
Config.php ...and drop the unnecessary &reference from child class pkeyGet() overrides. 2010-01-06 14:28:40 -08:00
Confirm_address.php change function headers to K&R style 2008-12-23 14:33:23 -05:00
Consumer.php Allow developers to delete OAuth applications 2010-02-05 03:18:43 +00:00
Conversation.php - conversation.uri needs to be nullable 2010-02-17 01:11:14 -08:00
Deleted_notice.php check correct define (not backwards compatible) 2009-09-15 21:12:44 -04:00
Design.php let backgrounds be put under SSL 2010-02-11 17:03:31 -05:00
Fave.php Dropped deprecated timestamp-based 'since' parameter for all API methods. When it sneaks in it can cause some very slow queries due to mismatches with the indexing. 2010-03-02 11:54:02 -08:00
File_oembed.php Fixup script for files w/ bogus data saved into file record ('h bug') 2010-03-10 15:13:16 -08:00
File_redirection.php Fixup script for files w/ bogus data saved into file record ('h bug') 2010-03-10 15:13:16 -08:00
File_thumbnail.php define LACONICA and accept LACONICA for backwards compatibility 2009-08-26 10:41:36 -04:00
File_to_post.php ...and drop the unnecessary &reference from child class pkeyGet() overrides. 2010-01-06 14:28:40 -08:00
File.php A null mimetype is not an enclosure (more likely than not means there was an error) 2010-03-11 17:27:25 -05:00
Foreign_link.php A better way to safely delete Foreign_links 2010-03-05 03:55:56 +00:00
Foreign_service.php change function headers to K&R style 2008-12-23 14:33:23 -05:00
Foreign_subscription.php change function headers to K&R style 2008-12-23 14:33:23 -05:00
Foreign_user.php change foreign_user.id to bigint (for Twitter, Facebook, etc.) 2009-06-24 14:44:02 -07:00
Group_alias.php Fixed problem causing 500 error on notices containing a non-existent group 2010-03-06 00:30:15 +00:00
Group_block.php ...and drop the unnecessary &reference from child class pkeyGet() overrides. 2010-01-06 14:28:40 -08:00
Group_inbox.php ...and drop the unnecessary &reference from child class pkeyGet() overrides. 2010-01-06 14:28:40 -08:00
Group_member.php add events for subscribing to people and joining groups 2010-01-13 02:16:13 -08:00
Inbox.php Dropped deprecated timestamp-based 'since' parameter for all API methods. When it sneaks in it can cause some very slow queries due to mismatches with the indexing. 2010-03-02 11:54:02 -08:00
Invitation.php change function headers to K&R style 2008-12-23 14:33:23 -05:00
Local_group.php modify group actions so they use Local_group to look up by nickname 2010-02-25 08:44:15 -05:00
Location_namespace.php flip x flag on generated files 2009-10-21 22:43:41 -04:00
Login_token.php Redirect to a one-time-password when ssl and regular server are different 2010-01-09 15:26:06 -08:00
Memcached_DataObject.php Add class and (if present) id to DB_DataObject error exceptions; often they're VERRRRRY vague, and it helps to know what type of item is failing! 2010-02-24 01:09:12 +00:00
Message.php create a method for notification for new messages, and use it 2009-12-15 10:31:25 -05:00
Nonce.php PHP 5.3 compatibility hack for DB_DataObject 2010-02-12 11:15:12 -08:00
Notice_inbox.php Dropped deprecated timestamp-based 'since' parameter for all API methods. When it sneaks in it can cause some very slow queries due to mismatches with the indexing. 2010-03-02 11:54:02 -08:00
Notice_source.php change function headers to K&R style 2008-12-23 14:33:23 -05:00
Notice_tag.php Dropped deprecated timestamp-based 'since' parameter for all API methods. When it sneaks in it can cause some very slow queries due to mismatches with the indexing. 2010-03-02 11:54:02 -08:00
Notice.php Blow more timeline caches on notice delete. Fixes paging on public and profile timelines after deleting something from the first page. 2010-03-15 14:19:22 -07:00
Oauth_application_user.php Remove verifier from Oauth_application_user (not needed there) 2010-01-24 16:36:05 -08:00
Oauth_application.php Allow developers to delete OAuth applications 2010-02-05 03:18:43 +00:00
Profile_block.php define LACONICA and accept LACONICA for backwards compatibility 2009-08-26 10:41:36 -04:00
Profile_role.php Initial user role controls on profile pages, for owner to add/remove administrator and moderator options. 2010-03-03 15:43:49 -08:00
Profile_tag.php fix problem with dupe tags in profile 2009-02-28 15:17:49 -08:00
Profile.php Drop timestamp cutoff parameter from User::getCurrentNotice() and Profile::getCurrentNotice(). 2010-03-11 11:01:01 -08:00
Queue_item.php XMPP queued output & initial retooling of DB queue manager to support non-Notice objects. 2010-01-22 12:52:36 -08:00
Related_group.php some class files had x bit set 2009-05-22 21:11:46 -04:00
Remember_me.php change function headers to K&R style 2008-12-23 14:33:23 -05:00
Remote_profile.php Fix regression in remote subscription; added hasRole() shadow method on Remote_profile. 2009-11-25 22:23:21 +00:00
Reply.php Dropped deprecated timestamp-based 'since' parameter for all API methods. When it sneaks in it can cause some very slow queries due to mismatches with the indexing. 2010-03-02 11:54:02 -08:00
Safe_DataObject.php Drop result ID from data objects on clone(). This keeps the original object working if it was in the middle of a query loop, even if the cloned object falls out of scope and triggers its destructor. 2010-03-15 15:58:55 -07:00
Session.php additional debugging data for Sessions 2010-01-28 13:53:28 -05:00
Sms_carrier.php change function headers to K&R style 2008-12-23 14:33:23 -05:00
status_network.ini Fixes for status_network db object .ini and tag setter script 2010-01-28 20:09:17 -08:00
Status_network.php Stomp queue restructuring for mass scalability: 2010-02-16 09:16:51 -08:00
statusnet.ini Fix a few keys that got dropped from statusnet.ini by mistake 2010-02-25 21:46:53 -08:00
statusnet.links.ini PHP 5.3 compatibility hack for DB_DataObject 2010-02-12 11:15:12 -08:00
Subscription.php Remove check for secret in token deletion on Subscription::cancel() 2010-03-01 18:03:17 -05:00
Token.php Add verifier and verified callback to token for OAuth 1.0a 2010-01-24 16:36:05 -08:00
User_group.php Merge commit 'origin/testing' into 0.9.x 2010-03-12 09:41:49 -08:00
User_location_prefs.php Add magic formula to keep DB_DataObject from treating location prefs pkey as autoincrement 2009-12-30 08:56:43 -10:00
User_username.php Fixed warning messages when auto-registering a new LDAP user. 2010-03-08 13:15:49 -05:00
User.php Merge branch 'testing' of git@gitorious.org:statusnet/mainline into 0.9.x 2010-03-11 16:39:07 -05:00