diff -rNaur a/freelinking/freelinking.api.php b/freelinking/freelinking.api.php
--- a/freelinking/freelinking.api.php	2012-02-21 00:38:25.000000000 +1000
+++ b/freelinking/freelinking.api.php	2012-02-22 13:01:55.000000000 +1000
@@ -15,7 +15,7 @@
  * @see http://drupal.org/node/???
  */
 function hook_freelinking() {
-  $plugins['myplugin'] array(
+  $plugins['myplugin'] = array(
     'indicator' => '/myplugin/',
     'translate' => array(' ' => '_'),
     'replacement' => 'http://example.com/node/%1',
diff -rNaur a/freelinking/freelinking.module b/freelinking/freelinking.module
--- a/freelinking/freelinking.module	2012-02-21 00:38:25.000000000 +1000
+++ b/freelinking/freelinking.module	2012-02-22 13:01:55.000000000 +1000
@@ -45,7 +45,7 @@
     'tips callback' => '_freelinking_tips',
   );
   return $filters;
-} 
+}
 
 /**
  * Implements filter process callback
@@ -192,7 +192,7 @@
   if (!$link[0]) {
     $link[0] = $target['text'] ? $target['text'] : $target['target'];
   }
-  
+
   // support html link text unless plugin overrides
   if (isset($plugin['html']) && $plugin['html'] !== FALSE) {
     $link[2]['html'] = TRUE;
@@ -260,7 +260,7 @@
   // Standardize link, grab authoritative "structured" version
   // designate the rendered text for display
   if (is_array($link)) {
-    if (isset($link['failover']) && $link['failover'] != 'error' && 
+    if (isset($link['failover']) && $link['failover'] != 'error' &&
         $link['failover'] != 'none') {
       $target = isset($link['target']) ? $link['target'] : $target;
       $target['other']['trace'][] = $plugin_name;
diff -rNaur a/freelinking/modules/freelinking_prepopulate/freelinking_prepopulate.info b/freelinking/modules/freelinking_prepopulate/freelinking_prepopulate.info
--- a/freelinking/modules/freelinking_prepopulate/freelinking_prepopulate.info	2012-02-21 10:19:09.000000000 +1000
+++ b/freelinking/modules/freelinking_prepopulate/freelinking_prepopulate.info	2012-02-22 13:02:14.000000000 +1000
@@ -6,20 +6,6 @@
 dependencies[] = prepopulate
 
 
-; Information added by drupal.org packaging script on 2009-11-25
-version = "6.x-3.x-dev"
-core = 7.x
-project = "freelinking"
-datestamp = "1259150922"
-
-
-; Information added by drupal.org packaging script on 2010-03-31
-version = "6.x-3.x-dev"
-core = 7.x
-project = "freelinking"
-datestamp = "1269994094"
-
-
 files[] = freelinking_prepopulate.api.php
 files[] = freelinking_prepopulate.install
 files[] = freelinking_prepopulate.module
diff -rNaur a/freelinking/modules/freelinking_prepopulate/freelinking_prepopulate.module b/freelinking/modules/freelinking_prepopulate/freelinking_prepopulate.module
--- a/freelinking/modules/freelinking_prepopulate/freelinking_prepopulate.module	2012-02-21 00:38:25.000000000 +1000
+++ b/freelinking/modules/freelinking_prepopulate/freelinking_prepopulate.module	2012-02-22 13:02:26.000000000 +1000
@@ -32,7 +32,7 @@
  */
 function freelinking_prepopulate_node_callback($target, $plugin) {
   // Use specified node type or fallback to configuration.
-  if ($target['type']) {
+  if (isset($target['type']))  {
     $node_type = check_plain($target['type']);
   }
   else {
@@ -60,7 +60,7 @@
   $query['edit[title]'] = check_plain($target['dest']);
 
   // Use arguments targeted for Prepopulate or get values from current node/page.
-  if (is_array($target['other']['prepopulate'])) {
+  if (isset($target['other']['prepopulate']) && is_array($target['other']['prepopulate'])) {
     foreach ($target['other']['prepopulate'] as $field => $value) {
       $query[$field] = $value;
     }
@@ -75,11 +75,13 @@
   // This is not currently restricted by advanced settings, just by the ability
   // of the FL_P API to recognize arguments from $target
   $query_override = freelinking_prepopulate_fields_from_array('nodecreate', $target);
+  if (isset($query_override)) {
   foreach ($query_override as $key => $value) {
     if ($value) {
       $query[$key] = $value;
     }
   }
+}
   return array($title, $url, array(
       'query' => $query,
       'attributes' => array(
@@ -101,13 +103,17 @@
     '#description' => t('Which content type should be created by Freelinking?'),
   );
 
-  foreach (freelinking_prepopulate_list_fields('nodecreate') as $key => $value) {
+
+$nodecreate[] = freelinking_prepopulate_list_fields('nodecreate');
+if (isset($nodecreate)) {
+  foreach ($nodecreate as $key => $value) {
     $options[$key] = $value['title'];
   }
+}
   if (empty($options)) {
     return $form;
   }
-
+/* What does this one do? Did not find a usage commented it out.
   $form['freelinking_prepopulate_node_advanced'] = array(
     '#type' => 'checkboxes',
     '#title' => t('Advanced Options'),
@@ -115,6 +121,8 @@
     '#options' => $options,
     '#description' => t('Use the <em>Linking Node</em> for Create Node presets.'),
   );
+ *
+ */
   return $form;
 }
 
@@ -123,6 +131,7 @@
  * Gets the first available type
  */
 function _freelinking_prepopulate_default_node_type() {
+  $types = array();
   $types = node_type_get_names();
-  return $types[0];
+  return reset($types);
 }
diff -rNaur a/freelinking/modules/freelinking_prepopulate/freelinking_prepopulate.utilities.inc b/freelinking/modules/freelinking_prepopulate/freelinking_prepopulate.utilities.inc
--- a/freelinking/modules/freelinking_prepopulate/freelinking_prepopulate.utilities.inc	2012-02-21 00:38:25.000000000 +1000
+++ b/freelinking/modules/freelinking_prepopulate/freelinking_prepopulate.utilities.inc	2012-02-22 13:03:08.000000000 +1000
@@ -27,14 +27,13 @@
   $query = array();
   $index = $plugin . serialize($fields);
   if (!$prepopulate[$index]) {
+if (is_array(freelinking_prepopulate_list_fields($plugin))) {
     $prepopulate[$index] = array_intersect_key(freelinking_prepopulate_list_fields($plugin), $fields);
   }
+}
 
-  if ($plugin == 'nodecreate' && arg(0) == 'node' && is_numeric(arg(1)) && !arg(2)) {
-    $object = node_load(arg(1));
-  }
-
-  foreach ($prepopulate[$index] as $field => $definition) {
+  if (isset($prepopulate[$index]) && is_array($prepopulate[$index])) {
+    foreach ($prepopulate[$index] as $field => $definition) {
     switch ($field) {
       case 'og':
         $group = og_get_group_context();
@@ -60,6 +59,7 @@
         break;
     }
   }
+  }
   return $query;
 }
 
@@ -75,7 +75,10 @@
  */
 function freelinking_prepopulate_fields_from_array($plugin, $target) {
   $query = array();
-  $prepopulate = array_intersect_key(freelinking_prepopulate_list_fields($plugin), $target);
+  if (is_array($target && freelinking_prepopulate_list_fields($plugin))) {
+    $prepopulate[] = array_intersect_key(freelinking_prepopulate_list_fields($plugin), $target);
+  }
+  if (isset($prepopulate)) {
   foreach ($prepopulate as $field => $values) {
     // If it's an organic group, break the groups out to separate values.
     if ($field == 'og') {
@@ -101,10 +104,10 @@
     }
   }
   return $query;
+  }
 }
 
 
-
 /**
  * Build & retrieve the list of form fields for URL construction.
  * This is made with Prepopulate in mind, but is not restricted to Prepopulate.
@@ -182,6 +185,7 @@
       // To Be Implemented
     }
   }
-
+if (is_array($fields && $plugins[$plugin])) {
   return array_intersect_key($fields, $plugins[$plugin]);
+  }
 }
