[Tween-svn] [1514] URLがうまくリンクされないバグ修正

Back to archive index

svnno****@sourc***** svnno****@sourc*****
2011年 4月 14日 (木) 21:21:18 JST


Revision: 1514
          http://sourceforge.jp/projects/tween/svn/view?view=rev&revision=1514
Author:   kiri_feather
Date:     2011-04-14 21:21:17 +0900 (Thu, 14 Apr 2011)

Log Message:
-----------
URLがうまくリンクされないバグ修正
強制URL解決の時、クエリが落とされてリンクされるバグ修正

Modified Paths:
--------------
    trunk/Tween/ShortUrl.vb
    trunk/Tween/Twitter.vb


-------------- next part --------------
Modified: trunk/Tween/ShortUrl.vb
===================================================================
--- trunk/Tween/ShortUrl.vb	2011-04-07 09:51:15 UTC (rev 1513)
+++ trunk/Tween/ShortUrl.vb	2011-04-14 12:21:17 UTC (rev 1514)
@@ -149,7 +149,7 @@
                         retUrlStr = urlEncodeMultibyteChar(httpVar.GetRedirectTo(tmpurlStr))
                         If retUrlStr.StartsWith("http") Then
                             retUrlStr = retUrlStr.Replace("""", "%22")  'ダブルコーテーションがあるとURL終端と判断されるため、これだけ再エンコード
-                            orgData = orgData.Replace("<a href=""" + orgUrl + """", "<a href=""" + retUrlStr + """")
+                            orgData = orgData.Replace("<a href=""" + tmpurlStr, "<a href=""" + retUrlStr)
                             SyncLock _lockObj
                                 If Not urlCache.ContainsKey(orgUrl) Then urlCache.Add(orgUrl, retUrlStr)
                             End SyncLock

Modified: trunk/Tween/Twitter.vb
===================================================================
--- trunk/Tween/Twitter.vb	2011-04-07 09:51:15 UTC (rev 1513)
+++ trunk/Tween/Twitter.vb	2011-04-14 12:21:17 UTC (rev 1514)
@@ -2710,16 +2710,20 @@
         Const url_valid_general_path_chars As String = "[a-z0-9!*';:=+$/%#\[\]\-_,~]"
         Const url_balance_parens As String = "(?:\(" + url_valid_general_path_chars + "+\))"
         Const url_valid_url_path_ending_chars As String = "(?:[a-z0-9=_#/\-\+]+|" + url_balance_parens + ")"
-        Const pth As String = "(?<path>(/(?:" + url_balance_parens +
+        Const pth As String = "(?:" + url_balance_parens +
             "|@" + url_valid_general_path_chars + "+/" +
             "|[.,]?" + url_valid_general_path_chars + "+" +
-            ")?" +
-            url_valid_url_path_ending_chars + "?)?)"
+            ")"
+        Const pth2 As String = "(/(?:" +
+            pth + "+" + url_valid_url_path_ending_chars + "|" +
+            pth + "+" + url_valid_url_path_ending_chars + "?|" +
+            url_valid_url_path_ending_chars +
+            ")?)?"
         Const qry As String = "(?<query>\?[a-z0-9!*'();:&=+$/%#\[\]\-_.,~]*[a-z0-9_&=#])?"
         Const rgUrl As String = "(?<before>(?:[^\""':!=]|^|\:))" +
                                     "(?<url>(?<protocol>https?://|www\.)" +
                                     url_valid_domain +
-                                    pth +
+                                    pth2 +
                                     qry +
                                     ")"
         '絶対パス表現のUriをリンクに置換



Tween-svn メーリングリストの案内
Back to archive index