I'm marking this as Critical, though I'm not 100% sure it is the fault of Secure Pages.

I am logged in as a user who has all administrative privileges (but is not User 1). I am viewing the list of all Organic Groups (/og) and I clicked to a group node for which I am the manager. A big error popped up on my screen, and I was now logged in as a different user who is a member of this group (logged in permanently until I log out.. it doesn't just load a cached page with this person's username or something). Here is that error:

warning: preg_match() expects parameter 2 to be string, array given in /u/sites/relationshipmastersacademy/webroot/sites/all/modules/contrib/securepages/securepages.module on line 222.
warning: preg_match() expects parameter 2 to be string, array given in /u/sites/relationshipmastersacademy/webroot/sites/all/modules/contrib/securepages/securepages.module on line 228.
warning: Illegal offset type in isset or empty in /u/sites/relationshipmastersacademy/webroot/includes/path.inc on line 65.
warning: Illegal offset type in /u/sites/relationshipmastersacademy/webroot/includes/path.inc on line 70.
warning: preg_match() expects parameter 2 to be string, array given in /u/sites/relationshipmastersacademy/webroot/sites/all/modules/contrib/securepages/securepages.module on line 222.
warning: preg_match() expects parameter 2 to be string, array given in /u/sites/relationshipmastersacademy/webroot/sites/all/modules/contrib/securepages/securepages.module on line 228.
warning: Illegal offset type in isset or empty in /u/sites/relationshipmastersacademy/webroot/includes/path.inc on line 65.
warning: Illegal offset type in /u/sites/relationshipmastersacademy/webroot/includes/path.inc on line 70.
warning: preg_match() expects parameter 2 to be string, array given in /u/sites/relationshipmastersacademy/webroot/sites/all/modules/contrib/securepages/securepages.module on line 222.
warning: preg_match() expects parameter 2 to be string, array given in /u/sites/relationshipmastersacademy/webroot/sites/all/modules/contrib/securepages/securepages.module on line 228.
warning: Illegal offset type in isset or empty in /u/sites/relationshipmastersacademy/webroot/includes/path.inc on line 65.
warning: Illegal offset type in /u/sites/relationshipmastersacademy/webroot/includes/path.inc on line 70.

Refreshing removes that error.

I do have the Boost module enabled, but I don't think that would affect this. I do NOT have the Secure Page Hijack Prevention module enabled, as I was having some trouble with it while checking out orders in Ubercart for pre-existing users.

I logged out and typed the URL of the modules page and (obviously) was asked to log in. When I did log in, I was taken to the normal landing page, but this error was present also:

user warning: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE cid = 'ctools_plugin_includes'' at line 1 query: DELETE FROM WHERE cid = 'ctools_plugin_includes' in /u/sites/relationshipmastersacademy/webroot/includes/cache.inc on line 179.

Refreshing removes that error.

It sounds like this might be something wrong on my server, but I am wondering if, if this particular error occurred wherein Secure Pages receives an improper variable, it could fail in a more graceful fashion?

Comments

Offlein’s picture

Category: bug » support
Priority: Critical » Normal

A relief. The error seems to be appearing for other reasons, but it is NOT responsible for the user changing. I have fixed that. I am changing this to a support request.

grendzy’s picture

Status: Active » Postponed (maintainer needs more info)

Can you clarify which problem was fixed? Was it the user switching, or the PHP warnings?

The user switching you describe is almost always caused by a theme or module modifying the global $user object. Do you have any custom modules? Does your theme interact with "global $user"? What contributed modules to you have?

Offlein’s picture

It was the user switching, and you were right. I'm still doing research on this, but there was a theme function, I believe modifying the global $user. However, the PHP warnings remain.

As far as we can tell, it was only occurring on a specific node, and we can't duplicate it anywhere else. That page had a number of different components all merged into one, however.. I think we're gonna run with it for a while and see if it happens again so we can spot a commonality.

grendzy’s picture

Status: Postponed (maintainer needs more info) » Closed (cannot reproduce)

Since there's been no further feedback, I'm marking this issue as closed.